Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jgit-dev] GC performance change since upgrade to 2.14

Hi Will,
v2.14.1 will arrive shortly: a huge number of fixes have been made on top of v2.14 (over 70).

On 26 May 2017, at 20:58, Will Saxon <saxonww@xxxxxxxxx> wrote:

Hello,

We upgraded to 2.14 last weekend, and shortly afterwards started seeing a few performance issues:

- Users reported pushes would never complete (traced to autogc)

Auto-GC problem. Just disable it on JGit

- Nightly 'gerrit gc' job began failing (traced to NIO2 sshd timeout)

Known issue, fixed in v2.14.1.

- Nightly builds began timing out (lack of GC)

Consequence of previous issue.


We've resolved or worked around all of the above, but the last issue we're seeing is that GC is taking 3-4x longer than with the prior version (2.13.7). We have 228 projects of varying size, and prior to the upgrade a 'gerrit gc --all' took 20-30 minutes. Now it takes ~90 minutes. Is this expected?.

Possibly question for Matthias and the JGit mailing list?


On one of our busier projects I ran a 'gerrit gc <project> --show-progress' and it appeared to hang after the first 'Selecting commits' step. The gerrit server was using 100% of 1 CPU core at this point; running jstack several times showed that the GC thread was busy in org.eclipse.jgit.internal.storage.pack.PackWriterBitmapPreparer.setupTipCommitBitmaps. This phase of the GC took over 30 minutes by itself, after which time the rest of the expected progress output was printed.

Just wondering if there's some new configuration defaults we should look at tuning, if something is probably wrong with our installation, or if maybe this is expected because GC is doing more than it used to. It looks like there have been a lot of GC-related changes in JGit 4.6/4.7, although it's not obvious from the release notes that GC performance would be noticeably different.

Thanks,

-Will



--
--
To unsubscribe, email repo-discuss+unsubscribe@xxxxxxxxxxxxxxxx
More info at http://groups.google.com/group/repo-discuss?hl=en

---
You received this message because you are subscribed to the Google Groups "Repo and Gerrit Discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to repo-discuss+unsubscribe@xxxxxxxxxxxxxxxx.
For more options, visit https://groups.google.com/d/optout.


Back to the top