You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I noticed that I cannot delete files during program execution after they have been analyzed by Maracas. I ran different tests to understand at which point I cannot delete files. Turns out, deletion of files is no longer possible right after Maracas computes Delta with the following method call: Delta delta = Maracas.computeDelta(apiPath1, apiPath2)
This is a problem because I analyze big dataset and after running 1.6% of my data I already accumulate 6GB of local data (that cannot be deleted during program execution), and besides, I run out of memory due to filled up Java Heap Space. Perhaps, this has to do with resources not being released completely, and some references are still stored on the heap (my best guess).
We experimented with @lmove further with the test I have in my project. The test is called testFilesCanBeDeletedAfterMaracasAnalysis, and it is pushed to my project repo, in MaracasAnalyzerTest.java file. We found out that the problem is caused by the following method invocation (internal to Maracas tool): Delta delta = Delta.fromJApiCmpDelta( api1Path.toAbsolutePath(), api2Path.toAbsolutePath(), classes, MaracasOptions.newDefault());
By debugging further, Lina reached a conclusion that it is worth taking a closer look at buildSpoonModel method that is called somewhere downstream Maracas, which might be opening the files, but not releasing them, causing the issue.
The text was updated successfully, but these errors were encountered:
- Keep the JARs open in the URLClassLoader until we're done with
building our delta model
- Then, explicitly cl.close() it when appropriate (???) to release the
JARs
I noticed that I cannot delete files during program execution after they have been analyzed by Maracas. I ran different tests to understand at which point I cannot delete files. Turns out, deletion of files is no longer possible right after Maracas computes Delta with the following method call:
Delta delta = Maracas.computeDelta(apiPath1, apiPath2)
This is a problem because I analyze big dataset and after running 1.6% of my data I already accumulate 6GB of local data (that cannot be deleted during program execution), and besides, I run out of memory due to filled up Java Heap Space. Perhaps, this has to do with resources not being released completely, and some references are still stored on the heap (my best guess).
We experimented with @lmove further with the test I have in my project. The test is called
testFilesCanBeDeletedAfterMaracasAnalysis
, and it is pushed to my project repo, in MaracasAnalyzerTest.java file. We found out that the problem is caused by the following method invocation (internal to Maracas tool):Delta delta = Delta.fromJApiCmpDelta( api1Path.toAbsolutePath(), api2Path.toAbsolutePath(), classes, MaracasOptions.newDefault());
By debugging further, Lina reached a conclusion that it is worth taking a closer look at buildSpoonModel method that is called somewhere downstream Maracas, which might be opening the files, but not releasing them, causing the issue.
The text was updated successfully, but these errors were encountered: