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.
When doing a large checkout with cvsnt from the command line, the process will sometimes hang. The client is actually running in Windows 2000 within a Virtual PC (win2k is the guest OS and WinXP is the host OS). Funnily, I never get such a hang when using wincvs to do the checkout - only when doing the checkout from the command line. I think that in the case that cvs command line would hang, wincvs reports a communication error 'Unexpected response from server'. In any case, I think the problem is that the server hangs up the connection and the plink code cannot cope with this. I change the timeouts in the plink code from INFINITE to 10 seconds and no I never see the hang, but I occasionally get a error when doing the checkout. This is okay because I can detect the error and simply re-try the checkout. The system is an automated build system, so a hang is really bad - it stops the process until an engineer can manually attend to it. An error, however, is okay because a script can easily detect it and re-try the operation. The patch for my change is below. Please think about it and maybe implement something similar. Index: plink_cvsnt.c =================================================================== RCS file: /usr/local/cvs/cvsnt/plink/plink_cvsnt.c,v retrieving revision 1.1.2.5 diff -r1.1.2.5 plink_cvsnt.c 249c249 < WaitForSingleObject(odata->eventback, INFINITE); --- > WaitForSingleObject(odata->eventback, 10000); 377c377 < n = WaitForMultipleObjects(4, handles, FALSE, INFINITE); --- > n = WaitForMultipleObjects(4, handles, FALSE, 10000); Ian