This project has moved. For the latest updates, please go here.
3
Vote

Clone Explorer Fails with error message

description

I just installed Clone Detective, and when I click Run Clone Detective I get the following message box (after ~10 seconds).

"Clone Detective did not produce a clone report. Please review the log file."

What's the problem here?

BEGIN EDIT BY terrajobst
The relevant fragment from the log is this part:

java.lang.StackOverflowError
at edu.tum.cs.conqat.clonedetective.detection.suffixtree.CloneDetectingSuffixTree.initInducedClones(CloneDetectingSuffixTree.java:77)
    [...]
at edu.tum.cs.conqat.clonedetective.detection.suffixtree.CloneDetectingSuffixTree.initInducedClones(CloneDetectingSuffixTree.java:77)
Just added to the issue description so that can be searched later on.
END EDIT

file attachments

comments

terrajobst wrote Aug 19, 2008 at 10:45 PM

Hi sfcalvert, thanks for reporting the issue but unfortunately you provided not enough information to reproduce the error. Could you please attach the complete log file? You can obtain the log by clicking the hyperlink "Failed" right to the error icon in the clone explorer. Thank you very much.

sfcalvert wrote Aug 20, 2008 at 3:59 PM

Here's the log.

terrajobst wrote Aug 20, 2008 at 6:01 PM

Thanks. We will investigate the error.

terrajobst wrote Aug 28, 2008 at 10:18 AM

Hi, this is a problem with ConQAT in conjunction with your code.

ConQAT internally uses a recursive algorithm somewhere in the clone detection. Your code must contain some more complex structure that causes ConQAT to exceed that maximum stack size the Java VM has reserved for the thread running ConQAT. The ConQAT team is actively investigating this issue and may be able to remove the recursion entirely.

Meanwhile you can change the maximum stack size ConQAT gains when running the clone detection. For this, you simply have to modify the ConQAT.bat file installed by Clone Detective. You find this file typically here: C:\Program Files\Clone Detective for Visual Studio\ConeQAT\bin\conqat.bat. Please change the the part "java -Xmx512m -cp ..." to something like "java -Xmx512m -Xss1m -cp ...". The -Xss1m switch sets the stack size to 1 MB. If you still get the exception please slowy increase the value until it is gone. If you need to specify more than 3 MB I assume ConQAT runs into an infinite recursion (note that the Windows default stack size for a thread is 1 MB).

Hope this helps.

AlexShirshov wrote Oct 27, 2008 at 4:36 PM

Setting stack size to 3Mb did not help. See an attachment.

Sn33zingPanda wrote Jun 14, 2009 at 3:43 AM

What is the status of this issue? I am receiving the same error, and increasing the stack size has no effect. I ran successfully a few months ago, but when I tried it now (after significant change), it will not run.

Wintermute79 wrote Mar 26, 2013 at 1:35 AM

Same here, log attached. The following line is 1024 times in the log:
at edu.tum.cs.conqat.clonedetective.detection.suffixtree.CloneDetectingSuffixTree.initInducedClones(CloneDetectingSuffixTree.java:77)