Community technical support mailing list was retired 2010 and replaced with a professional technical support team. For assistance please contact: Pre-sales Technical support via email to sales@march-hare.com.
We're experiencing problems when trying to add a new directory to an existing repository in a dual server (master/proxy) configuration. All other commands work well, it's just adding a new directory that fails. Setup: ----- Systems are Ubuntu Linux (client, master server, proxy server), CVSNT version is reported as: Client: Concurrent Versions System (CVSNT) 2.5.04 (Zen) Build 3125 (RC 8) (client/server) Server: Concurrent Versions System (CVSNT) 2.5.04 (Zen) Build 3125 (RC 8) (client/server) We have a master and proxy server setup, with the repository on the master being rsynced back to the proxy after each command that modifies the repository (after a short delay to avoid a series of commands triggering multiple parallel rsyncs). The commands that trigger an rsync are (taken from the postcommand script): add|admin|authserver|chacl|chown|commit|edit|import|init|passwd|rchacl|rchown|remove|rename|rtag|server|tag|unedit|watch All other commands are ignored as far as master/slave sync is concerned. The system works well for normal operations (checkout/update/edit/commit etc) and when adding/removing files to *existing* directories. Problem: ------- A user on the slave (proxy) server tries to add a new directory to a repository. The series of test commands is: $ mkdir test2 $ touch test2/a.txt $ cvs add test2 cvs [add aborted]: there is a version in test2 already $ Nothing is added to the repository on the master server or the slave/proxy server. With trace, the output is as follows (the test2 directory is being added in existing directory tools/rxap in the testrep repository): $ cvs -ttt add test2 ... (snipped) ... 11:55:19: -> wrap_add(*.xls -kb, 0, 0, 0, 0) 11:55:19: -> wrap_add(*.zip -kb, 0, 0, 0, 0) 11:55:19: -> wrap_add(*.Z -kb, 0, 0, 0, 0) 11:55:19: -> Requesting server cvswrappers 11:55:19: -> Requesting server cvsrc (read-cvsrc2) 11:55:19: -> Parsing global cvsrc started 11:55:19: -> Parsing global cvsrc finished 11:55:19: -> Name_Repository((null),) 11:55:19: -> Name_Repository dup tmp is len 11:55:19: -> Name_Repository dup tmp is now len 11:55:19: -> Name_Repository open CVS/Repository 11:55:19: -> Name_Repository opened CVS/Repository ok so read a line 11:55:19: -> Name_Repository closed CVS/Repository 11:55:19: -> Name_Repository read 1 tools/rxap 11:55:19: -> Name_Repository read 2 tools/rxap 11:55:19: -> Name_Repository isabsolute( tools/rxap )? 11:55:19: -> Name_Repository isabsolute( tools/rxap )! 11:55:19: -> Name_Repository Sanitize_Repository_Name( /home/cvs/testrep/tools/rxap )! 11:55:19: -> Name_Repository return ( /home/cvs/testrep/tools/rxap )! 11:55:19: -> ParseTag_Dir((null),<something>,<something>,3,) 11:55:19: -> Create_Admin (test2, test2, /home/cvs/testrep/tools/rxap/test2, , , 0, 0) cvs [add aborted]: there is a version in test2 already $ The same series of commands to add the test directory works fine when performed on the master server and the directory is added and rsynced without errors. Any ideas or suggestions would be welcome.