Gerrit Performance Tuning Cheat Sheet

1,373 views
Skip to first unread message

Dariusz Luksza

unread,
Jul 3, 2015, 9:17:36 AM7/3/15
to repo-discuss

Based on the experience with our TeamForge customers (which use Gerrit as Git backend), we came up with a Gerrit Performance Tuning Cheat Sheet: http://tinyurl.com/q2aw6ba
We provide concrete configuration values and formulas for small, medium and large Gerrit instances (mostly based on the number of fetch requests per day).

The tips are mostly targeted to companies and organizations that want to use COTS hardware and use the vanilla version of Gerrit without any special file system backend or multi master support.

None of those values / formulas are carved in stone, but have been tested in production and are a good starting point for fine tuning exercises.

Feel free to use/share/comment.

Special kudos to Utsav Patel who volunteered to do the layout and graphics design and spent many hours on this.

The CollabNet Gerrit Team

Luca Milanesio

unread,
Jul 3, 2015, 4:44:07 PM7/3/15
to Dariusz Luksza, repo-discuss
Hi Dariusz,
a very nice idea indeed but lots of points are arguable IMHO.

Why don’t we make it more collaborative and we develop a cheat-sheet in Markdown that evolves with Gerrit under the Documentation folder?
We could then contribute to make it better and keep it up-to-date collectively, based on everyone’s experience with massively loaded production systems.

Luca.

--
--
To unsubscribe, email repo-discuss...@googlegroups.com
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...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Saša Živkov

unread,
Jul 6, 2015, 8:13:00 AM7/6/15
to Luca Milanesio, Dariusz Luksza, repo-discuss
On Fri, Jul 3, 2015 at 10:44 PM, Luca Milanesio <luca.mi...@gmail.com> wrote:
Hi Dariusz,
a very nice idea indeed but lots of points are arguable IMHO.

Why don’t we make it more collaborative and we develop a cheat-sheet in Markdown that evolves with Gerrit under the Documentation folder?

+1
 
We could then contribute to make it better and keep it up-to-date collectively, based on everyone’s experience with massively loaded production systems.

Based on that, the default answers for the "init" can be suggested.

Saša Živkov

unread,
Jul 6, 2015, 8:13:35 AM7/6/15
to Luca Milanesio, Dariusz Luksza, repo-discuss
On Mon, Jul 6, 2015 at 2:12 PM, Saša Živkov <ziv...@gmail.com> wrote:


On Fri, Jul 3, 2015 at 10:44 PM, Luca Milanesio <luca.mi...@gmail.com> wrote:
Hi Dariusz,
a very nice idea indeed but lots of points are arguable IMHO.

Why don’t we make it more collaborative and we develop a cheat-sheet in Markdown that evolves with Gerrit under the Documentation folder?

+1
 
We could then contribute to make it better and keep it up-to-date collectively, based on everyone’s experience with massively loaded production systems.

Based on that, the default answers for the "init" can be suggested.
I meant to write: "better default answers" 

Dariusz Luksza

unread,
Jul 6, 2015, 8:16:38 AM7/6/15
to Luca Milanesio, repo-discuss
Hi Luca,

Having such cheat sheet under gerrit documentation sounds awesome,
maybe you can propose something based on yours experience from
GerritHub.io? We can then jump in with ours.

On Fri, Jul 3, 2015 at 10:44 PM, Luca Milanesio
<luca.mi...@gmail.com> wrote:
--
Best regards

GSM: +49 017 445 41235
Blog: http://luksza.org http://javablog.pl
LinkedIn: http://linkedin.com/in/dariuszluksza

Luca Milanesio

unread,
Jul 6, 2015, 8:33:23 AM7/6/15
to Dariusz Luksza, repo-discuss
Yep, would be more than happy to share data, stats and suggestions based on our use-case :-)

Luca.

Nasser Grainawi

unread,
Jul 6, 2015, 1:48:47 PM7/6/15
to Luca Milanesio, Dariusz Luksza, repo-discuss
Another approach here that I would think could provide more accurate tuning would be to provide a document describing how to run tuning tests.

That might look something like: To tune fetch traffic (addresses how many SSH/HTTP threads your server can safely handle, jgit tuning, heap size, etc), clone your largest project with as many threads as possible from a client. If you saturate the network, CPU, memory, or other resources on client while the server is still performing well, use multiple clients in parallel to increase the load on the server until you see a performance degradation. Change heap size, jgit config values, etc using <some guide> to improve performance.

Nasser
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project

Igors Sersts

unread,
Apr 29, 2025, 4:21:33 AMApr 29
to Repo and Gerrit Discussion
Hi all,

Do we have a performance tuning cheat sheet for Gerrit 3.x? Or has it perhaps been replaced with something else, like updated documentation, a community blog post, or similar?
I couldn’t find anything relevant in the official docs—any pointers would be appreciated.

Thanks!

Reply all
Reply to author
Forward
0 new messages