|
[
Permlink
| « Hide
]
Nick Minutello added a comment - 16/Aug/05 09:06 PM
Chaps, I am going to have to patch this - I will send you the code...
Fair enough.
Just ofr the record, may I ask when this caused you trouble? Is it while updating module details in the admin section? Anton Not sure what happenned - but the lock file has been left lying around - so none of our modules have been updating since Aug-12
Also seems as though the auto-updating has also stopped...
We need to restart jira - but we cant yet... (hard to find a quiet time) Do you mean that after you removed the lock file the Vcs Service is not updating the repos?
Can you try setting the log level to DEBUG: If it is, and its 'stuck' can you take a thread dump and see what its up to? Thanks, Yep, removing the lock file still left it stuck.
I didnt have time to look into it (was with Mike) - but I will get a thread-dump for you -N It got stuck again.
Seems the offending thread stack is: 3XMTHREADINFO "JiraQuartzScheduler_Worker-2" (TID:4066B0C0, sys_thread_t:9A0BFD0, state:R, native ID:9820) prio=4 Its not going to necessarily fix the stuck thread.....
But I have made the following small change(s) to CvsRepositoryUtilImpl: ------------- ------------- To fix the stuck thread, you may want to use the concurrency utils - and use a FutureTask - which you can wait for completion for a timeout period - and if it hasnt completed in, say, 10 mins, you can cancel it.
And with a threadpool executor, this would also let you run a couple in parallel (but not too many for the poor cvs server...) -N We'll try to commit the patch for 3.4 - not sure if we will be able to get the concurrency stuff in as well though.
I will add the concurrency stuff to our production server - and once its tested, post the code here (the code for that is pretty straightforward...)
Sounds good to me
Voila!
CVS operation with timeout. I couldnt write any unit tests without refactoring it - but I have tested it end-to-end. Thanks! We'll see if we can get this into 3.4
Guys, with the implementation as it stands now, we have to update it manually.
Within a few days, the CVS thread hangs - the lock file sits there and we cant even update it manually. Its a bit dissappointing to have written the code for you - and it has to wait until 3.5 to go in?? We are going to revisist a few things in regards to CVS in 3.5, so it would be a logical place to do this. If this is very important to you we will merge into 3.4.
I have committed and tested this patch. Thanks for the work Nick.
Cheers. Thanks. Its going to make 1.4?
-Nick Nick,
It will be in 3.4. Cheers, Ouch. Not sure if you noticed, but my last test was complete shite.
Should have been String processedComment = regexCommentHandler.splitMailBody(rawEmailbody);
(rather than regexCommentHandler.splitMailBody(expectedComment)) Not entirely surprising, when you make that change, the test no longer passes. params.put(KEY_REGEX, "/Extranet\\s*jira.london.echonet/FMB/UK/EUROPE/GROUP@CRAPPYLOTUSNOTES/");
Nick,
Is the last comment meant to be on Thanks, |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||