Community
Participate
Working Groups
Customer experiences compare timeout if the compare takes more than 20 seconds. He wants to be bale to change timout value. Cust Using 1.0 ************************************** We can reproduce this just comparing two local files. So it appears to be the compare framework. Ydo a diff on a file, and it pops up a dialog explicitly telling you about a 20 second time-out. I'll repeat the exercise and post you the dialog in a short while... where does it tell you about the 20 sec ? window popping up ? Very odd. Where are you suggesting an error message might be present? There are no other messages obvious in the UI, although I imagine there might be some logged. The reason it looked like a coded time-out is that it consistently tells us that the diff took longer than 20 seconds and therefore was aborted (or words to that effect). Customer Said: I'm using extssh and haven't experienced any problems with the same CVS repository with other tools (at least nobody has reported any). The diff engine timing out after 20 seconds does not seem right. Is there a way I can tweak this magic period (perhaps a property in some XML somewhere)? There's nothing I can find in the preferences to allow this to be changed. *****************************
The dialog should provide the option to continue. Fix is understood, might be difficult to do without API change.
*** Bug 2933 has been marked as a duplicate of this bug. ***
The file comparison algorithm used has O(nd) behavior, where n is the number of lines and d the number of differences. This becomes roughly O(n2) if there are lots of differences. This is not a problem as long as the number of lines is <2000. However if files with more than 15000 lines and (whitespace) differences on every line are compared it becomes an issue. I didn't try to fix the algorithm but I removed the 20 sec timeout and added a cancable progress dialog to the differencer. This doesn't solve all problems because now the comparison of the 15000 line files results in an OutOfMemoryException (after 5 minutes). However the algorithm recoveres from the exception and the end user can try to run it with the 'ignore whitespace option' turned on.