|Re: [jgit-dev] ObjectDirectory.scanPacksImpl performance regression and temporary memory leak|
On 22 May 2019, at 19:01, Thomas Wolf <thomas.wolf@xxxxxxxxxx> wrote:Hi Marc,[...]On 22 May 2019, at 19:24 , Marc Strapetz <marc.strapetz@xxxxxxxxxxx> wrote:With commits 82b1af31 and fef78212, the reuse condition of existing PackFiles in ObjectDirectory.scanPacksImpl has been changedDue to the racy-clean handling in FileSnapshot.isModified, this results in many false-positive modification detections immediately after creating or modifying a PackFile and thus in redundant re-creation of PackFiles. I'm experiencing our unit tests to be ~5x slower with this change.Yes, that's bug 546891:Âhttps://bugs.eclipse.org/bugs/show_bug.cgi?id=546891ÂWe're trying to fix it. See the chain of changes atÂhttps://git.eclipse.org/r/#/c/141843/Â.Also, the oldPack may now be removed from "forReuse" and thus not properly closed anymore further down the loop.That bit got missed. Thanks for pointing it out.Good catch Marc, thanks for that.@Matthias: are you OK for me to fix it on the stable-4.5 branch? Or anywhere else?