2009-10-15 8 views
0

En soumettant mes changements cette erreur surgit de AnkSvn:SVN soumettre les transactions db 106-43.txn props Le système ne peut pas trouver le fichier spécifié

SharpSvn.SvnException: Commit failed (details follow): ---> SharpSvn.SvnException: Can't open file '\\dfs.coteng.com\coteng\cotengitbright\visualsvn\repositories\Coteng.DSAutomation\db\transactions\106-43.txn\props': The system cannot find the file specified. 
    --- End of inner exception stack trace --- 
    at SharpSvn.SvnClientArgs.HandleResult(SvnClientContext client, SvnException error) 
    at SharpSvn.SvnClientArgs.HandleResult(SvnClientContext client, svn_error_t* error) 
    at SharpSvn.SvnClient.Commit(ICollection`1 paths, SvnCommitArgs args, SvnCommitResult& result) 
    at Ankh.Services.PendingChanges.PendingChangeHandler.<>c__DisplayClass15.<Commit_CommitToRepository>b__14(Object sender, ProgressWorkerArgs e) 
    at Ankh.ProgressRunnerService.ProgressRunner.Run(Object arg) 

Un message similaire est indiqué lorsque vous essayez de présenter avec TortoiseSVN.
Que fait ce fichier d'accessoires et est-ce que quelqu'un en connaît la cause première possible?

Répondre

1

Je m'attends à ce que le fichier props soit lié aux propriétés de révision pour le commit (appelé une transaction à ce stade, ou txn). Accédez-vous à un référentiel local ou est-il distant?

Il me semble que quelque chose ne va pas du côté du serveur (ou du référentiel) alors qu'il crée le nouveau commit. Peut-être un disque rempli, ou les permissions sont erronées, ou la corruption du système de fichiers ... ne sais pas vraiment.

Pouvez-vous fournir un contexte supplémentaire?

+0

Je l'ai examiné avec le sysadmin et il semble que nos repos SVN sont sur un système DFS. Chaque fois que le commit prend plus de temps que "x" secondes, le DFS commence à le répliquer sur les autres serveurs. Nous pensons qu'il prend un verrou sur le répertoire et que cela empêche le serveur SVN d'y accéder. La raison pour laquelle ils ont choisi de le mettre sur DFS est que notre département à l'étranger pourrait également l'utiliser. Je leur ai expliqué que cela ne fonctionnerait pas de cette façon et que nous aurions besoin d'un système de contrôle de la source distribuée pour cela. Vu qu'il m'a fallu 2 ans pour les convaincre que nous avons besoin de SC, je ne pense pas que ce soit une bonne chose. –

+0

Si vous avez deux personnes dans différents bureaux qui font un commit en même temps, et que le système de fichiers est mis à jour sous svn, je pourrais voir un côté terminer, supprimer les fichiers de transaction temporaires, et laisser l'autre côté terriblement confus. – retracile

0

Je viens de rencontrer la même erreur. Cela était dû au fait que les dossiers "txn-protorevs" et "transactions" du dossier "db" de mon référentiel (côté serveur) étaient manquants après une restauration du référentiel à partir de la sauvegarde.

Ces dossiers sont vides (sauf lors d'une validation) mais ils sont obligatoires. Si votre référentiel vous manque, vous pouvez les restaurer (il suffit de les créer vides, avec les droits R/W appropriés).

Etrangement, j'ai également dû redémarrer mon service SVN pour résoudre complètement le problème. La validation a réussi, mais après cela, j'ai rencontré d'autres erreurs, en particulier une "fin de fichier inattendue" sur l'ID de dernière révision lors de la mise à jour de ma copie de travail à partir d'un ordinateur client.

Questions connexes