CodeCompass icon indicating copy to clipboard operation
CodeCompass copied to clipboard

Increase incremental parsing performance of cppmetrics

Open mcserep opened this issue 2 years ago • 0 comments

Currently the CppAstNodeMetrics table is cleaned up during incremental parsing by iterating through all stored entities, querying the related CppAstNode, then the appropriate file. After that, CppAstNodeMetrics entities related to a deleted or modified file are erased.

I propose a likely more memory and time efficient approach: since the CppFileMetrics table is also maintained through the same logic (looking for entities related to a modified or deleted file), we could erase the related CppAstNodeMetrics entities in the same loop. (Probably a new ODB view is required to connect the CppAstNodeMetrics table to the files.)

mcserep avatar Nov 08 '23 12:11 mcserep