tsantalis / RefactoringMiner

MIT License
360 stars 137 forks source link

RefactoringMiner cannot finish processing a commit from project Nutch #32

Closed tsantalis closed 6 years ago

tsantalis commented 6 years ago

https://github.com/apache/nutch/commit/c93d908bb635d3c5b59f8c8a22e0584ebf588794

Ivan-Veselov commented 6 years ago

On my machine it's finished in 1 hour and 5 minutes according to System.currentTimeMillis(). According to visualvm profiler one of overloads of editDistance consumed a lot of CPU time.

https://github.com/tsantalis/RefactoringMiner/blob/cb82a94d553c668bed969dd42ecbdaefbf3ae497/src/gr/uom/java/xmi/diff/StringDistance.java#L11

tsantalis commented 6 years ago

According to JProfiler the root methods contributing to the performance overload are: UMLModelDiff.checkForOperationMovesBetweenCommonClasses() There are 64 addedOperations and 128 removedOperations (i.e., 64x128 combinations of methods to be compared).

UMLModelDiff.checkForOperationMovesIncludingAddedClasses() There are 238 addedOperations and 128 removedOperations (i.e., 238x128 combinations of methods to be compared).

UMLModelDiff.checkForOperationMovesIncludingRemovedClasses() There are 64 addedOperations and 142 removedOperations (i.e., 64x142 combinations of methods to be compared).