Thursday, December 16, 2010

Two Hundred Commits

My first patch (add a separate TRUNCATE privilege) was committed to the PostgreSQL source code repository (at the time, CVS) by Tom Lane on September 8, 2008.  I became a committer a little over a year later, and the first commit I did myself was on December 10, 2009 (a patch from Marcin Mank to fix levenshtein_with_costs).  Of course, I screwed it up: the release team was in the middle of wrapping a minor release, and I back-patched the fix in the brief window after the release notes were written and before the release went out.

Last night, I made my two hundredth commit to what is now the master branch in git, and thought that would be a good time to stop and compute a few statistics.  I've committed a total of 202 patches, of which 169 were committed only to the master branch, 33 were committed to the master branch and back-patched, and 2 were applied only to one or more back branches.  So, about 17% of my commits were back-patching of some form.

Of those 202 patches, 123 were originally written by me and 79 were originally written by other people (though in many cases substantially revised by me, or someone else).  Those 79 patches came from 32 different people: Fujii Masao (16), KaiGai Kohei (10), Erik Rijkers (5), Alexander Korotkov (4), Pavel Stehule (3), Kevin Grittner (3), Josh Kupershmidt (3), Jeff Davis (3), Dimitri Fontaine (3), Andres Freund (3), Josh Berkus (2), Itagaki Takahiro (2), Guillaume Lelarge (2), Greg Smith (2), and one patch each from Asko Tiidumaa, Caleb Welton, Chris Browne, Daniele Varrazzo, David Christensen, David Fetter, David Wheeler, Dean Rasheed, Devrim Gündüz, Jan Otto, John Naylor, Marc Cousin, Marcin Mank, Marti Raudsepp, Satoshi Nagayasu, Thom Brown, Tim Landscheidt, and Tollef Fog Heen. [Update: I originally omitted three names from this paragraph.  I've now added them.]

Many of the 123 patches originally written by me were in fact clean-ups or follow-on patches to patches written by others, or were trivial patches committed in response to a specific problem report by someone else.  In fact, only a small minority of the patches I've committed are ones where I thought up the initial idea, wrote the patch, and committed it.  Nearly all of them involve help from someone else: a problem report, design advice, code review, testing, editing, or some other help that made the final patch better than it otherwise would have been or, in many cases, made it exist at all.

I think this is a very important point.  Although most of the very largest patches are written by committers, there is a huge volume of important work - much of it of really excellent quality - being produced through the collective efforts of many, many people.  We, the PostgreSQL community, owe everyone who takes the time to write a patch to make our product better as much help with reviewing, testing, and revising as we can possibly give them, and a prompt commit when the work is of sufficient quality and real usefulness.  I'm proud to be part of that effort.


  1. I think you committed a few of my patches, as well. A quick search showed:


    So, thank you!

  2. Woops, sorry Jeff. Dunno how I missed that. :-(