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.
Hi Arthur! Quoting Arthur Barrett <arthur.barrett at march-hare.com>: > Tge, > > You are probably better off discussing this on the cvs-dev list. You'll Good point ... I'll give that a try. But I think, this still might be interesting from a user perspective. > need to send the actual protocol trace and also either a cvslock trace > or a cvsnt server trace. See the info on "cvslock -test" and > "ServerTraceFile" here: > http://march-hare.com/cvspro/faq/faq2.asp#2z > > Note: AFAICT just because a certain sequence of server commands is > possible in the protocol does not mean that it should ever be sent in > that sequence. Modern best practice is to call out to the CVS or CVSNT > client executable (even from a Java program) - not to send commands > directly to the server. This is what all the best clients do, including > TortoiseCVS, WinCVS and Oracle Jdeveloper. To be honest, I cannot see that this is "modern" nor "best practice". If I want to talk to you on the phone, I don't hang up after every sentence either. Or actually, you are suggesting to throw away the phone and get a new one every time ... :-) Optimal were a well-defined CVS-API to use from Apps. This actually does not exist as part of CVS (afaik), but for example the Netbeans CVS client is exactly such a thing (a set of Java classes, which I can use to perform CVS operations). Admittedly they don't enforce either method, so I have now implemented in my prog both (with reconnect if using CVSNT, no reconnect with regular CVS - more efficient). I'd be curious what other people think ... Finally, I also think, it's probably not difficult to fix nor does it cause compatibility problems: just release all locks but keep the lock server connection intact if in server mode, until the client session ends. But this is really something for the developers list. Regards, tge > Regards, > > > > Arthur > > > > -----Original Message----- > From: cvsnt-bounces at cvsnt.org [mailto:cvsnt-bounces at cvsnt.org] On Behalf > Of Thomas Gentsch > Sent: Wednesday, 29 November 2006 11:21 PM > To: cvsnt at cvsnt.org > Subject: [cvsnt] Lock server connection in server mode > > > > Hello *, > > after spending quite some I finally found a problem with CVSNT which I'd > like to post for discussion. > > Within a java program using the netbeans CVS client, I try to check in a > set of objects. Almost consistently the check-in runs through nicely, > the commit too. Subsequently I want to attach a tag to all the files, > which is preceded by a status operation. The first status call fails: > Error communicating with lock server (send): No such file or directory > > So, the actual sequence is something like: > add > add > ... > commit > status > status > ... > tag > tag > ... > Happens with :pserver:... as well as with :local:... on a Windows XP > Prof. SP2 with CVSNT 2.5.03.2382. It does not happen on any Unix with a > "normal" CVS. > > Initially I thought this is some bug, but finally I found in the > sources, that the commit command just calls Lock_Cleanup() or so, which > will close the lock server connection. If I do a reconnect after the > commit(), the status() calls run through! The same happens after the > last status() before the first tag(). Again a reconnect helps. Finally > the same thing after every tag(). > > This might be OK if used from the command line, but not in server mode. > What do you think? > > Regards, > tge > _______________________________________________ > cvsnt mailing list > cvsnt at cvsnt.org http://www.cvsnt.org/cgi-bin/mailman/listinfo/cvsnt cvsnt downloads at march-hare.com https://www.march-hare.com/cvspro/en.asp#downcvs @CVSNT on Twitter CVSNT on Facebook >