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.
Hey Guys, I noticed that lock.cpp do_lock_server() has a hardcoded sleep time of 1 second and hardcoded retry count of 20, which means that any command will only wait at most 20 seconds when trying to grab a lock. We have a few very large (100MB to 150MB) files in our repository and checking these files in or out can take upto 7 or 8 minutes across the network. I don't know enough about the internals of cvsnt, but it seems like even if it first reads the entire file into memory before sending it across the network, 20 seconds still isn't long enough in our environment. If someone is attempting to do an rtag at the same time as anyone else is working with these large files, the rtag aborts because it can't grab the lock in 20 seconds. I know that older versions used a 15 second retry interval and a very large retry count, which worked well in our case. I can change the code myself and build myself, but this seems like it will affect a lot of people. I'm going to set my copy to sleep(10) and have a maximum retry count of 200. Ideally this would be some kind of configuration option instead of hardcoded. Any thoughts around changing this for an upcoming release? Thanks, Bill.