Re: Patch committers

Lists: pgsql-hackers
From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-11 15:25:36
Message-ID: 200911111525.nABFPao24147@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

bruce wrote:
> This brings up a concern I have --- that the number of patch
> committers/managers is decreasing while our patch volume is increasing.
> Consider that Heikki is working mostly on Hot Standby and Streaming
> Replication, Alvaro isn't as involved in applying patches, Neil Conway
> isn't involved with Postgres anymore, I am in a 42-day travel period,
> and Robert Haas is feeling burnt-out --- that is not a pretty sight.
>
> Much of the patch burden is falling on Tom. Now, Tom isn't complaining,
> but I am concerned about placing too much of a burden on him. I know we
> are growing new patch reviewers who will eventually be able to review
> _and_ apply patches on their own, but getting them to that point is
> going to take time.
>
> I have no real answers, but I am concerned. I have talked to many of
> you privately about this to get your input.

There is a more worrisome/sinister possibility that I didn't want to
mention in my first email --- that companies are hiring our most
experienced developers and having them work almost exclusively on
company-related or closed-source projects.

Unfortunately I can think of at least half-a-dozen cases of this
happening. Now, this was expected, but the hope was that this kind of
skill siphoning would be offset by additional people being paid to be
involved in Postgres development, and that clearly is happening. What I
am worried about is that this is not happening as much among our most
experienced people --- that in fact they are the most likely to be hired
and perhaps placed into roles where they are less involved in the
community than they were before. (Of course, there are counter-examples
where experience developers are hired to work on community Postgres
full-time.)

There is not much we as a community can do to prevent skill siphoning,
except perhaps publicly complaining about companies that do this.

If this is indeed a pattern, it has serious long-term consequences
because it means we will always have an unnaturally small pool of very
skilled people.

Up to this point we have been able to maintain a happy group of
developers. If things become unbalanced and people are regularly
required to do things they don't like doing, it will lead to Postgres no
longer being fun for them, which leads to burn-out and them leaving the
project. That happens frequently in other open source projects, but it
has been a very rare occurance for us, and I hope it stays that way.
Our ability to retain people for many years has benefitted us in
countless ways.

--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ If your life is a hard drive, Christ can be your backup. +


From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-11 17:45:25
Message-ID: 1257961525.22025.15.camel@vanquo.pezone.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On ons, 2009-11-11 at 10:25 -0500, Bruce Momjian wrote:
> There is a more worrisome/sinister possibility that I didn't want to
> mention in my first email --- that companies are hiring our most
> experienced developers and having them work almost exclusively on
> company-related or closed-source projects.

I can't claim to know everyone's employment terms, but I think it's a
bit of an illusion to think that the above hasn't always happened.
Except for a handful of people who have very special job arrangements,
*everyone* is working almost exclusively on company-related or
closed-source projects. The patches that get sent in are almost always
either fallout from a customer/company project, or stuff that one of the
closed-sourced forks has developed that they don't want to maintain, or
stuff people do "at night" to make their lives easier in the distant
future. All of those things are already special arrangements that
people need to make with their employers and their lives, but they have
discernible benefits. But you can't expect a lot of people or employers
to reserve time on top of that for handholding other people's patches
and for other "community" stuff that has no easy to measure benefits.


From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Peter Eisentraut <peter_e(at)gmx(dot)net>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-11 18:54:07
Message-ID: 200911111854.nABIs7s28991@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Peter Eisentraut wrote:
> On ons, 2009-11-11 at 10:25 -0500, Bruce Momjian wrote:
> > There is a more worrisome/sinister possibility that I didn't want to
> > mention in my first email --- that companies are hiring our most
> > experienced developers and having them work almost exclusively on
> > company-related or closed-source projects.
>
> I can't claim to know everyone's employment terms, but I think it's a
> bit of an illusion to think that the above hasn't always happened.
> Except for a handful of people who have very special job arrangements,

Yes, it has always happened. I think the big difference is that those
"special employments" are currently a fixed size, and the volume of
patches has increased as our user-base has increased.

I also think the bad economy is making it harder for people/companies to
devote time to community stuff when paid work is available.

I always had an assumption that those special employments would grow as
the community grew, but I am not sure I am seeing that. Combine that
with skill siphoning, and I get concerned.

> *everyone* is working almost exclusively on company-related or
> closed-source projects. The patches that get sent in are almost always
> either fallout from a customer/company project, or stuff that one of the
> closed-sourced forks has developed that they don't want to maintain, or
> stuff people do "at night" to make their lives easier in the distant
> future. All of those things are already special arrangements that
> people need to make with their employers and their lives, but they have
> discernible benefits. But you can't expect a lot of people or employers
> to reserve time on top of that for handholding other people's patches
> and for other "community" stuff that has no easy to measure benefits.

Totally agree. It is that zero-return work that is hard to justify for
people and companies. It is clearly something that requires
self-sacrifice, and personally I think a culture of self-sacrifice is
what has given us such great success and such a nuturing community
environment.

Historically, there was a "golden era" when Tom, Heikki, Neil Conway,
Alvaro, and others all handled patches and things ran with much less of
an individual burden than we have now, but that might have been an
aberration.

Personally, I don't think we have a major problem now, but I do think
there is the chance of this getting worse in the future, and making
people unhappy. I am brining it up now in case there is something we
can do to avoid such unhappiness.

--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ If your life is a hard drive, Christ can be your backup. +


From: Josh Berkus <josh(at)agliodbs(dot)com>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: Peter Eisentraut <peter_e(at)gmx(dot)net>, Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-11 19:04:01
Message-ID: 4AFB0AA1.5010306@agliodbs.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Bruce,

Well, I think the answer is to promote some new committers. When was
the last time we added a committer?

We have added a bunch of new reviewers and major contributors over the
last 2 years. It's time to review their work and see who can be
promoted to more responsibility for other people's patches.

--Josh Berkus


From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Josh Berkus <josh(at)agliodbs(dot)com>
Cc: Peter Eisentraut <peter_e(at)gmx(dot)net>, Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-11 19:13:12
Message-ID: 200911111913.nABJDCG10226@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Josh Berkus wrote:
> Bruce,
>
> Well, I think the answer is to promote some new committers. When was
> the last time we added a committer?
>
> We have added a bunch of new reviewers and major contributors over the
> last 2 years. It's time to review their work and see who can be
> promoted to more responsibility for other people's patches.

Yes, I did consider that, and it might be a solution. The larger
problem is that with many of the patches, it isn't commit-rights that is
preventing people from being involved, but rather the expert knowledge
necessary to make sure the patch works properly.

For example, probably only Simon and Heikki are knowledge enough to
apply the HS and SR patchs --- but those patch is handled. The harder
part is the other patches where there are only a small pool of people
knowledgeable enough to apply the patch, but many of those knowledgeable
people are tied up with non-community things.

--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ If your life is a hard drive, Christ can be your backup. +


From: Josh Berkus <josh(at)agliodbs(dot)com>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: Peter Eisentraut <peter_e(at)gmx(dot)net>, Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-11 19:47:42
Message-ID: 4AFB14DE.1070105@agliodbs.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers


> For example, probably only Simon and Heikki are knowledge enough to
> apply the HS and SR patchs --- but those patch is handled. The harder
> part is the other patches where there are only a small pool of people
> knowledgeable enough to apply the patch, but many of those knowledgeable
> people are tied up with non-community things.

People learn to do this by doing it. That's how you learned, and Tom
and Heikki. Ultimately, it's a source code control system; if someone
screws up, we can always back it out.

--Josh Berkus


From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Josh Berkus <josh(at)agliodbs(dot)com>
Cc: Peter Eisentraut <peter_e(at)gmx(dot)net>, Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-11 19:51:20
Message-ID: 200911111951.nABJpK814569@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Josh Berkus wrote:
>
> > For example, probably only Simon and Heikki are knowledge enough to
> > apply the HS and SR patchs --- but those patch is handled. The harder
> > part is the other patches where there are only a small pool of people
> > knowledgeable enough to apply the patch, but many of those knowledgeable
> > people are tied up with non-community things.
>
> People learn to do this by doing it. That's how you learned, and Tom
> and Heikki. Ultimately, it's a source code control system; if someone
> screws up, we can always back it out.

True, but even I avoid patches I don't understand, and "practicing" by
applying them could lead to a very undesirable outcome, e.g.
instability.

--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ If your life is a hard drive, Christ can be your backup. +


From: Josh Berkus <josh(at)agliodbs(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-11 19:58:49
Message-ID: 4AFB1779.8080604@agliodbs.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers


> True, but even I avoid patches I don't understand, and "practicing" by
> applying them could lead to a very undesirable outcome, e.g.
> instability.

Right, but being responsible for applying the patch is the only real
incentive anyone has to learn enough to understand its effects. If a
contributor is not responsible, they can always think "oh, Tom will get
it, I'll learn that later."

--Josh Berkus


From: Rick Gigger <rick(at)alpinenetworking(dot)com>
To: Josh Berkus <josh(at)agliodbs(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-11 20:03:07
Message-ID: 678BF8FE-F05F-4B51-A4C5-73EAE563219C@alpinenetworking.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Couldn't you have a policy that every patch is reviewed first by someone who wants to be an expert in that area, and then by someone who is currently an expert. Then you have the best of both worlds. The patch is reviewed by someone will make sure it won't cause problems, and the want to be expert gets training and will eventually be able to be the expert.

On Nov 11, 2009, at 12:58 PM, Josh Berkus wrote:

>
>> True, but even I avoid patches I don't understand, and "practicing" by
>> applying them could lead to a very undesirable outcome, e.g.
>> instability.
>
> Right, but being responsible for applying the patch is the only real
> incentive anyone has to learn enough to understand its effects. If a
> contributor is not responsible, they can always think "oh, Tom will get
> it, I'll learn that later."
>
> --Josh Berkus
>
>
> --
> Sent via pgsql-hackers mailing list (pgsql-hackers(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-hackers


From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Rick Gigger <rick(at)alpinenetworking(dot)com>
Cc: Josh Berkus <josh(at)agliodbs(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-11 20:24:46
Message-ID: 20091111202446.GG4038@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Rick Gigger wrote:
> Couldn't you have a policy that every patch is reviewed first by someone who wants to be an expert in that area, and then by someone who is currently an expert. Then you have the best of both worlds. The patch is reviewed by someone will make sure it won't cause problems, and the want to be expert gets training and will eventually be able to be the expert.

The wannabe-experts can do all the reviewing they want today (and they
do). But we cannot make this a hard requirement, or we risk stalling
the project for patches that are not reviewed timely by non-experts.

--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support


From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Peter Eisentraut <peter_e(at)gmx(dot)net>
Cc: Bruce Momjian <bruce(at)momjian(dot)us>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-11 20:26:06
Message-ID: 603c8f070911111226v1560d5cbvd1abb19c681d1eab@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Wed, Nov 11, 2009 at 12:45 PM, Peter Eisentraut <peter_e(at)gmx(dot)net> wrote:
> The patches that get sent in are almost always
> either fallout from a customer/company project, or stuff that one of the
> closed-sourced forks has developed that they don't want to maintain, or
> stuff people do "at night" to make their lives easier in the distant
> future.  All of those things are already special arrangements that
> people need to make with their employers and their lives, but they have
> discernible benefits.  But you can't expect a lot of people or employers
> to reserve time on top of that for handholding other people's patches
> and for other "community" stuff that has no easy to measure benefits.

Well, I'm perfectly willing to handhold other people's patches and do
community stuff that has no easy to measure benefits. I'm willing to
do it precisely because I believe it will make it easier to get my own
patches accepted. AIUI, the whole point of CommitFests is that I
agree to review other people's patches and they in turn agree to
review mine, and we all get to scratch our respective itches. In
fact, because I enjoy community work, I'm even willing to spend MORE
time helping other people get their patches in than I do writing my
own patches - but I'm only willing to spend 2x or 3x the time on other
people's stuff that I spend on my own, not 10x.

In the last two CommitFests it has become evident that we have a
problem with freeloading. During the September CommitFest, the set of
reviewers and the set of patch submitters were almost disjoint. Now,
fortunately, we still had enough reviewers; the real shortage was of
committers. But I think that some of the reviews were not as good as
they could have been had they been reviewed by more experienced
contributors, or even just by multiple people. A fair amount of easy
stuff slipped through the review process. Tom cleaned it up, but he
shouldn't have to be responsible for things that a read-through of the
patch by an experienced C programmer should have caught. I tried to
help, but I was fairly tied up with overall CommitFest management and
did not have time for a full read-through of every patch.

...Robert


From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: Josh Berkus <josh(at)agliodbs(dot)com>, Peter Eisentraut <peter_e(at)gmx(dot)net>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-11 20:46:34
Message-ID: 603c8f070911111246y488cd236y5c1e0f8ff391de7a@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Wed, Nov 11, 2009 at 2:51 PM, Bruce Momjian <bruce(at)momjian(dot)us> wrote:
> Josh Berkus wrote:
>>
>> > For example, probably only Simon and Heikki are knowledge enough to
>> > apply the HS and SR patchs --- but those patch is handled.  The harder
>> > part is the other patches where there are only a small pool of people
>> > knowledgeable enough to apply the patch, but many of those knowledgeable
>> > people are tied up with non-community things.
>>
>> People learn to do this by doing it.  That's how you learned, and Tom
>> and Heikki.  Ultimately, it's a source code control system; if someone
>> screws up, we can always back it out.
>
> True, but even I avoid patches I don't understand, and "practicing" by
> applying them could lead to a very undesirable outcome, e.g.
> instability.

Well, if we're going to add committers (and I'm generally in favor of
that) we need to pick people who won't apply patches that they don't
understand. In a way, that's really the only HARD requirement for a
committer, I think. If someone doesn't understand any aspect of the
system well enough to commit patches, but they know that, then having
them as a committer will be useless, but not actively harmful (beyond
being a waste of time). On the other hand, someone who actually does
know some parts of the system well enough to commit patches but
doesn't have the discretion to avoid things that are more than they
can tackle will create chaos.

In other words, we should be looking for people who (1) know enough to
be able to commit at least some patches without breaking the world and
(2) are responsible enough to know which things they can commit and
which they should leave alone.

Of course, anyone you pick will probably make some mistakes, but
that's the general idea...

...Robert


From: Greg Smith <greg(at)2ndquadrant(dot)com>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: Josh Berkus <josh(at)agliodbs(dot)com>, Peter Eisentraut <peter_e(at)gmx(dot)net>, Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-11 20:55:49
Message-ID: 4AFB24D5.8040104@2ndquadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Bruce Momjian wrote:
> True, but even I avoid patches I don't understand, and "practicing" by
> applying them could lead to a very undesirable outcome, e.g.
> instability.
>
The usual type of practice here should come from applying trivial
patches, or ones that don't impact code quality. Docs patches come to
mind as a good way someone could get used to the commit process without
introducing much potential mayhem along the way. As far as keeping new
people away from complicated patches, ultimately you just have to trust
that anyone who can commit has a reasonable idea of their own
capabilities. I seriously doubt you're going to find a new committer
jumping right in by committing hot standby out of the gate just because
they could do so.

--
Greg Smith 2ndQuadrant Baltimore, MD
PostgreSQL Training, Services and Support
greg(at)2ndQuadrant(dot)com www.2ndQuadrant.com


From: Greg Smith <greg(at)2ndquadrant(dot)com>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Peter Eisentraut <peter_e(at)gmx(dot)net>, Bruce Momjian <bruce(at)momjian(dot)us>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-11 20:57:06
Message-ID: 4AFB2522.5070907@2ndquadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Robert Haas wrote:
> I tried to help, but I was fairly tied up with overall CommitFest management and
> did not have time for a full read-through of every patch.
>
I think it's completely unreasonable to expect the CF manager to do any
patch review themselves. It's a hard enough job to keep going without
actually getting your hands into the details.

--
Greg Smith 2ndQuadrant Baltimore, MD
PostgreSQL Training, Services and Support
greg(at)2ndQuadrant(dot)com www.2ndQuadrant.com


From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Greg Smith <greg(at)2ndquadrant(dot)com>
Cc: Peter Eisentraut <peter_e(at)gmx(dot)net>, Bruce Momjian <bruce(at)momjian(dot)us>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-11 21:21:59
Message-ID: 603c8f070911111321j6ef24996gf49fe78b376665b5@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Wed, Nov 11, 2009 at 3:57 PM, Greg Smith <greg(at)2ndquadrant(dot)com> wrote:
> Robert Haas wrote:
>>
>> I tried to help, but I was fairly tied up with overall CommitFest
>> management and
>> did not have time for a full read-through of every patch.
>>
>
> I think it's completely unreasonable to expect the CF manager to do any
> patch review themselves.  It's a hard enough job to keep going without
> actually getting your hands into the details.

Well, that's another reason I'd kind of like to take a break from CF
management - it would free up more of my time for actual patch review.
I have been doing some review anyhow, but given as how I don't get
paid for any of this, there's only a few hours a day that are
potentially available for this, and it has to compete with the
dishwasher breaking and my wife wanting to play Pandemic. By the way,
if anyone wants to buy me a new dishwasher, I will put reviewing your
patch at the top of my "to do" list. :-)

...Robert


From: Greg Smith <greg(at)2ndquadrant(dot)com>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: Peter Eisentraut <peter_e(at)gmx(dot)net>, Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-11 21:50:22
Message-ID: 4AFB319E.6050400@2ndquadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Bruce Momjian wrote:
> I also think the bad economy is making it harder for people/companies to
> devote time to community stuff when paid work is available.
>
I think this explains away more of the recent situation than you're
giving it credit for. When everybody's fat and happy and it's easy to
generate/raise money, it's also easy to throw money toward the
community. When times are tight, giving away work that you might charge
for (or have already charged for) is harder for a company to justify.
It's easy to plan to have someone do community work when you hire them,
only to realize down the line that business has dried up enough that
you're stuck with the choice between them doing that and a job that will
make or break and upcoming payroll. And that's where a lot more
businesses are at right now than at any time in a long while.

After looking for an example of the boom/bust cycle impacting this
community's work that's old enough to be clearer in hindsight, I would
suggest noting that Great Bridge was officially announced in May of 2000
and was gone by the end of 2001. Overlay those dates on top of
http://www.google.com/finance?q=INDEXNASDAQ:.IXIC after switching "Zoom"
to show 10 years.

--
Greg Smith 2ndQuadrant Baltimore, MD
PostgreSQL Training, Services and Support
greg(at)2ndQuadrant(dot)com www.2ndQuadrant.com


From: Josh Berkus <josh(at)agliodbs(dot)com>
To: Greg Smith <greg(at)2ndquadrant(dot)com>
Cc: Bruce Momjian <bruce(at)momjian(dot)us>, Peter Eisentraut <peter_e(at)gmx(dot)net>, Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-12 00:02:07
Message-ID: 4AFB507F.5070906@agliodbs.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On 11/11/09 12:55 PM, Greg Smith wrote:
> I seriously doubt you're going to find a new committer
> jumping right in by committing hot standby out of the gate just because
> they could do so.
>

We'd be lucky to get them to *read* the Hot Standby patch and comment on it.

--Josh Berkus


From: Emmanuel Cecchet <manu(at)frogthinker(dot)org>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: Peter Eisentraut <peter_e(at)gmx(dot)net>, Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-12 03:30:55
Message-ID: 4AFB816F.8050002@frogthinker.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

The following email expresses my personal opinion and does not reflect
the opinion of my employers.

Bruce Momjian wrote:
> I also think the bad economy is making it harder for people/companies to
> devote time to community stuff when paid work is available.
>
Actually the bad economy should be a booster for open source projects.
There should be more developers with time to acquire new skills on
projects that will get them a better job when the economy comes back.

I think the problems are more rooted in the developer community itself.
The pg-hackers mailing list is probably the less socially skilled
developer community I have ever seen in all the open source projects I
have been involved with. A very high standard is set for contributions,
which is good for the quality of the code, but the lack of development
process and clear decision chain turns every new contributor into
endless frustration. For a patch to be committed, a vague consensus has
to arise among the strong technical voice(s) (usually convincing Tom is
enough). If a more complex feature needs to be implemented, the lack of
decision process ends up in a first long round of emails until everybody
gets tired of it. Then sometimes later someone tries to re-activate the
debate for another round and so on (partitioning is a good example). You
lost potential committers at each of these rounds.

The way I see it, most companies try to push their agenda, contribute
their patches back to the community if it works and just go with their
own fork and closed implementation if this is too much work or burden.
Whatever the economy, very few people can commit to an indefinite amount
of time to get a feature integrated in Postgres.

Now you should probably ask yourself what you should do as a community
to get more committers? Like it was said at PGCon, to get a patch in, it
is going to be hard and painful. How do you make it less hard and less
painful?

On the other end, how do we, simple developers, become better to reach
the status of committers? How can we endure the constant bashing
especially in the early stages of our learning phase (especially if you
are not paid to do it)? How do we justify to our employers that they
should persist through this long process without visibility, so that
eventually their contribution will make it back to the community? How do
we make it easier for companies to contribute code?

The lightness of the development process (no project manager, no
steering committee, no voting, no product management, ...) is both a
strength and a weakness that makes Postgres what it is today. The
commitfest started to address some of the most obvious issues but there
is probably much more that can be done by looking at what is happening
in the other open source communities.

Even if the economy is hard, I found time to invest my own 2 cents in
this email ;-)

Emmanuel


From: Nikhil Sontakke <nikhil(dot)sontakke(at)enterprisedb(dot)com>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: Josh Berkus <josh(at)agliodbs(dot)com>, Peter Eisentraut <peter_e(at)gmx(dot)net>, Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-12 06:57:00
Message-ID: a301bfd90911112257h5e26d649n4781f730326a4027@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Hi,

> True, but even I avoid patches I don't understand, and "practicing" by
> applying them could lead to a very undesirable outcome, e.g.
> instability.
>

How about having a staging server to help around novice committers?
Basically the selected new band of people can take a patch, review it
and if they deem it fit for checkin, they could check it into the
staging server.

Then they should try out the regression runs (we do have very few test
cases) and other sanity checks to ensure that things are sane.
Probably the buildfarm infrastructure can also be used to run against
this staging server on all platforms.

That ways, we can avoid the initial instability upto some extent and
then noob committer can then muster courage to atleast tell the
core-committers what they think about the staged patch commit.

Regards,
Nikhils
--
http://www.enterprisedb.com


From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: Emmanuel Cecchet <manu(at)frogthinker(dot)org>
Cc: Bruce Momjian <bruce(at)momjian(dot)us>, Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-12 07:55:54
Message-ID: 1258012554.26305.4.camel@fsopti579.F-Secure.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On ons, 2009-11-11 at 22:30 -0500, Emmanuel Cecchet wrote:
> On the other end, how do we, simple developers, become better to
> reach
> the status of committers? How can we endure the constant bashing
> especially in the early stages of our learning phase (especially if
> you
> are not paid to do it)? How do we justify to our employers that they
> should persist through this long process without visibility, so that
> eventually their contribution will make it back to the community?

That's basically just it: Assume bashing is part of the process. Don't
think of it as bashing. Take the constructive criticism from it, ignore
the rest. Assume only one out of three feature ideas will make it.
Apply the prerequisite amount of gamesmanship to the system and tune
your bikeshedding detectors. Don't take anything personally. Live and
learn.


From: Dimitri Fontaine <dfontaine(at)hi-media(dot)com>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: Peter Eisentraut <peter_e(at)gmx(dot)net>, Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-12 11:03:59
Message-ID: 87zl6satsw.fsf@hi-media-techno.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Bruce Momjian <bruce(at)momjian(dot)us> writes:

> Peter Eisentraut wrote:
>> discernible benefits. But you can't expect a lot of people or employers
>> to reserve time on top of that for handholding other people's patches
>> and for other "community" stuff that has no easy to measure benefits.
>
> Totally agree. It is that zero-return work that is hard to justify for
> people and companies. It is clearly something that requires
> self-sacrifice, and personally I think a culture of self-sacrifice is
> what has given us such great success and such a nuturing community
> environment.

I don't know what you're talking about here, or refering to.

The easy way to explain Open Source contributing to PHB and finance
people, in my mind, is the following: Open Source is not free as in free
beer. At all. Rather than paying licences costs, what you have to pay
for is your employees salary when they take the time to participate into
this community things. And if you're using Open Source Software, you
*need* employees that take part of the community processes.

That also mean you have real experts now, and ones able to drive the
project in a direction that will be to your profit as an employer. For
example, this hairy bug in your production environment will get fixed
the day you report about it, rather that when the licencing company
think it matches their roadmap, if ever.

Oh and some other niceties about it. Let's try the "story telling"
style... When I worked on preprepare, I though we had an urgent need
here to run it. It happened that we had yet more urgent to do, so I
barely had time to have it working and commit it on some pgfoundry
CVS. Less than a week after, I'm told on IRC that the product is running
fine in a production environment somewhere, taking real load. Now I
don't have to make tests before deploying. That has been done for
me. That's Open Source.

Regards,
--
dim

Is it 2009 and we're still having this discussion about how
participating into Open Source communities is a good way to spend your
money as an employer? Wow.


From: Josh Berkus <josh(at)agliodbs(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-12 18:27:00
Message-ID: 4AFC5374.7070707@agliodbs.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers


> That's basically just it: Assume bashing is part of the process. Don't
> think of it as bashing. Take the constructive criticism from it, ignore
> the rest. Assume only one out of three feature ideas will make it.
> Apply the prerequisite amount of gamesmanship to the system and tune
> your bikeshedding detectors. Don't take anything personally. Live and
> learn.

I think what Emmanuel is complaining about here ... with some
justification ... is not the revision requirements of our patch process
but the extremely confusing and frustrating nature of it for new
contributors. For example, how exactly is a new contributor supposed to
know the difference between "bikeshedding" and "constructive criticism",
when (a) they don't know the people involved, and (b) even our more
dedicated committers engage in bikeshedding periodically?

This isn't just Emmanuel; I've heard this complaint from numerous
first-time contributors, and have seen several talented people walk away
from our project because of it. Even people who have stuck with us,
such as Josh Tolley, have remarked on the "hazing ritual" inherent in
getting a first-time contribution in.

Probably, the only possible solution is for each new contributor to have
a mentor who sticks with them throughout the process of getting their
first contribution accepted, explaining the process, pre-reviewing their
submissions, and explaining to them which criticism they should be
paying attention to and which they shouldn't. I *thought* that Bruce
was doing that for AsterData, but apparently not.

This would require a pool of experienced contributors volunteering to be
mentors, which I'm not sure we have.

It would also help if people on this list *in general*, were to be a bit
more consistent about phrasing criticism as constructive criticism.
I've seen far too much "how stupid are you?" on this list for the good
health of our developer community.

--Josh Berkus


From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Josh Berkus <josh(at)agliodbs(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-12 18:54:03
Message-ID: 603c8f070911121054o63baa5v9f27350405c72d55@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Thu, Nov 12, 2009 at 1:27 PM, Josh Berkus <josh(at)agliodbs(dot)com> wrote:
>
>> That's basically just it:  Assume bashing is part of the process.  Don't
>> think of it as bashing.  Take the constructive criticism from it, ignore
>> the rest.  Assume only one out of three feature ideas will make it.
>> Apply the prerequisite amount of gamesmanship to the system and tune
>> your bikeshedding detectors.  Don't take anything personally.  Live and
>> learn.
>
> I think what Emmanuel is complaining about here ... with some
> justification ... is not the revision requirements of our patch process
> but the extremely confusing and frustrating nature of it for new
> contributors.  For example, how exactly is a new contributor supposed to
> know the difference between "bikeshedding" and "constructive criticism",
> when (a) they don't know the people involved, and (b) even our more
> dedicated committers engage in bikeshedding periodically?
>
> This isn't just Emmanuel; I've heard this complaint from numerous
> first-time contributors, and have seen several talented people walk away
> from our project because of it.  Even people who have stuck with us,
> such as Josh Tolley, have remarked on the "hazing ritual" inherent in
> getting a first-time contribution in.

I used to feel this way, too. I'm not sure whether it's really worse
at first, or whether it just seems worse a first until you get used to
it. There is no getting around the fact that this is a community of
very smart people. I work at a company where I'm the only developer.
Guess what - my development ideas are all brilliant - or at least
there's no contrary evidence! Then I come here, where there are
plenty of other developers just as smart as I am, or possibly smarter,
and here some of my ideas crash and burn. On the other hand,
sometimes someone objects to my idea and the *objections* crash and
burn. You can't expect to win them all when you're dealing with
people who are as smart as you and more knowledgeable about the code.

I try to be gentle with newcomers but it's not always easy to figure
out what that means. When someone submits a bad patch and I review
it, they sometimes get two or three pages of feedback detailing
inadequacies of various types. I understand that can be hard on the
ego, but I don't think it does anyone any favors to give them a
PARTIAL list of things they need to fix - in fact I think breaking up
the pain into multiple rounds is quite a bit worse, because then you
create the illusion of progress without the actuality. I don't give
people feedback because I want to hurt them or cause them pain, but I
know from experience that until those things are fixed, it *will*
*not* *get* *committed*. If I say nothing now, someone else will say
it later.

I am afraid that the difference between bikeshedding and legitimate
criticism is something that contributors have to learn for themselves.
I can tell you which things *I* think are bikeshedding, but someone
else may have a longer, shorter, or same-size non-overlapping list.
No one can speak with authority on this topic because no one is the
boss.

All that having been said, I feel your pain. I don't want to scare
off new contributors, but I don't necessarily know how to improve the
situation.

> Probably, the only possible solution is for each new contributor to have
> a mentor who sticks with them throughout the process of getting their
> first contribution accepted, explaining the process, pre-reviewing their
> submissions, and explaining to them which criticism they should be
> paying attention to and which they shouldn't.  I *thought* that Bruce
> was doing that for AsterData, but apparently not.

Well, this is a good idea, although I'm not sure how well it will play
out in practice. I'm always game if anyone wants to email me off-list
to discuss issues of this type, or...

> This would require a pool of experienced contributors volunteering to be
> mentors, which I'm not sure we have.

...I'm willing to do this.

> It would also help if people on this list *in general*, were to be a bit
> more consistent about phrasing criticism as constructive criticism.
> I've seen far too much "how stupid are you?" on this list for the good
> health of our developer community.

I don't see very much of this at all, so maybe this is another area
where it boils down to perspective. I find this list to be quite
civilized most of the time; I wouldn't hang around if I didn't.

...Robert


From: Selena Deckelmann <selenamarie(at)gmail(dot)com>
To: Emmanuel Cecchet <manu(at)frogthinker(dot)org>
Cc: Bruce Momjian <bruce(at)momjian(dot)us>, Peter Eisentraut <peter_e(at)gmx(dot)net>, Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-12 19:07:08
Message-ID: 2b5e566d0911121107m6c8e1006qa84c343515427b9c@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

I'm not addressing the complaints Emmanuel has about patch submission,
but was inspired by what he said. I hesitated to post this to
-hackers, but my hope is that my comments are taken in the spirit of
reflection.

I've been thinking about the Postgres community and things that
differentiate it from other FOSS projects for a few years. We lack
both a benevolent dictator, or a single-corporate backer... We have an
incredible reputation for technical expertise -- most knowledgeable
FOSS developers fear and are in awe of the quality of code our
community produces. I hear criticism for the way in which our
development community operates, and how we communicate with
"outsiders". But few people are able to offer concrete suggestions on
/how/ we might change, as opposed to the /particular things/ that they
think should change.

So on this point:

On Wed, Nov 11, 2009 at 7:30 PM, Emmanuel Cecchet <manu(at)frogthinker(dot)org> wrote:

> The commitfest started to
> address some of the most obvious issues but there is probably much more that
> can be done by looking at what is happening in the other open source
> communities.

Speaking from a cultural, and organizational standpoint:

* Distributed revision control as standard for the project

Using a distributed revision control system, and working from
developer branches which are pulled & pushed directly between
developers is consistently reported to have a positive impact on
solving problems and sharing information. Summer of Code mentors
consistently mention DVCS as having a huge positive impact on
productivity for their students - both because it's easy and cheap for
students to commit to their local repos, and because the merge/pull
tools are intuitive for the mentors and students.

This is how people work and share code "out there". I realize that
Postgres has an established cultural norm of posting patches to the
mailing list, and I'm not suggesting that people stop doing that.

I think more developers should be sharing branches as well.
git.postgresql.org should probably be reorganized to clearly divide
repos between postgresql-core and other projects (contrib, add-ons,
whatever).

We should also publish more information about how our developers are
sharing code with each other through repos.

* Decision making

Is there a project you'd point to as a model for decision making?
(serious question)

This is a volunteer organization, and as such, we're subject to who
has the expertise + time/energy to devote to the patches and projects.
Going back to what Bruce has said about skill drain -- if more
individuals were able to get their time sponsored to devote to the
technical challenges posed by the patches, then it might be possible
to have more coordinated/streamlined responses and decision making.

My experience in FOSS projects is that Postgres does fairly well on
execution compared to other projects (getting a new release out the
door every year, and now the alphas every couple months), but has some
issues with a couple large, important patches. Part of the problem
there appears to be people being stretched too thin, and inconsistent
communication practices.

More involvement from people really focusing on improving
communication between developers would be helpful to make those issues
easier to work around.

* Volunteers, funding and burnout

It's challenging to keep up with the technical discussions on -hackers
even if you are a very knowledgeable developer. If you're only doing
that on your free time, and say, you have a family? Most of the
developers that I know in other projects in leadership/commit manager
roles don't have young children, and very few are women.

So, another thing that we could use are more people like Bruce that
can devote a great deal of *work* time to thinking about and acting on
the issues around community management and recruitment. Robert Haas'
time spent on commitfest, for example, if sponsored by a foundation
would be very helpful. Maybe he could have bought a new dishwasher. :)

Also, we could use an individual dedicated to raising funds and
consistently executing on distributing the money out for non-code
"infrastructure" projects. Like:

* release management,
* marketing,
* dedicated public relations (driving things like new software release
articles, organizing interviews with press, and getting new case
studies written), and
* keeping track of our relationships with other organizations (Summer
of Code, conferences, commercial forks).

A lot of this work falls on Josh Berkus to coordinate. There are many
more tasks, and some are delegated to others & coordinated on
-advocacy. Again, this is work that could be funded through a
foundation, or as part of positions in particular companies.

IMO, it's about providing incentives that encourage people to use
their time wisely, and to help prevent burnout on the difficult tasks
around people management. And to say definitively that the people
tasks require organization and management, and we as a development
community value that.

-selena

--
http://chesnok.com/daily - me
http://endpoint.com - work


From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Josh Berkus <josh(at)agliodbs(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-12 19:56:57
Message-ID: 20091112195656.GK4780@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Robert Haas escribió:

> I used to feel this way, too. I'm not sure whether it's really worse
> at first, or whether it just seems worse a first until you get used to
> it. There is no getting around the fact that this is a community of
> very smart people. I work at a company where I'm the only developer.
> Guess what - my development ideas are all brilliant - or at least
> there's no contrary evidence! Then I come here, where there are
> plenty of other developers just as smart as I am, or possibly smarter,
> and here some of my ideas crash and burn. On the other hand,
> sometimes someone objects to my idea and the *objections* crash and
> burn. You can't expect to win them all when you're dealing with
> people who are as smart as you and more knowledgeable about the code.

Maybe this paragraph (and some others from this email and Josh's) should
be part of the "how to submit a patch" wiki page.

--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support


From: "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
To: <pgsql-hackers(at)postgresql(dot)org>
Cc: "Robert Haas" <robertmhaas(at)gmail(dot)com>, <Josh Berkus <josh(at)postgresql(dot)org>
Subject: Re: Patch committers
Date: 2009-11-12 22:39:24
Message-ID: 4AFC3A3C020000250002C754@gw.wicourts.gov
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On the subject topic, I have to say that I don't see where Robert
hasn't met the qualifications mentioned so far on this thread as
required to promote someone to the committer level; are there some
requirements which exist but haven't been mentioned?

Regarding the specific issues below, which seem to be more about the
related topic of drawing in new contributors...

Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
> Josh Berkus <josh(at)agliodbs(dot)com> wrote:
>>
>>> That's basically just it: Assume bashing is part of the process.

>> I've heard this complaint from numerous first-time contributors,
>> and have seen several talented people walk away from our project
>> because of it. Even people who have stuck with us, such as Josh
>> Tolley, have remarked on the "hazing ritual" inherent in getting a
>> first-time contribution in.
>
> I used to feel this way, too. I'm not sure whether it's really
> worse at first, or whether it just seems worse a first until you get
> used to it.

I would say that I don't often see anything I would consider as
"bashing", but that I have seen newcomers who appeared to want to help
contribute to the project handled with less finesse than one could
perhaps expect. It seems to me that those needing assistance
(especially if they are in dire straights or are trying to convert to
PostgreSQL) are treated very gently. Someone with a question, if it
isn't something too obviously documented in the FAQ or the online
manual, is given a polite and informative response. The responses get
pretty blunt if the person offers suggestions which show that the
person has (or assumes) technical competence, when those suggestions
aren't acceptable to the community. At that point it takes a pretty
thick skin to find some other way to contribute, rather than just
walking away. Again, I wouldn't call it bashing, but a level of
bluntness which could be disconcerting if the person hasn't followed
these lists long enough to understand how it is intended.

> When someone submits a bad patch and I review it, they sometimes get
> two or three pages of feedback detailing inadequacies of various
> types.

When done in a professional manner, which is typical of this list, I
don't think there's any reasonable alternative. I don't see that as a
problem.

Well, there is one thing which must be frustrating. If I was seated
near others who read this list, I would start a pool every time a
newcomer submitted a large patch -- how long until someone tells them
to break it into smaller patches, and how long until someone else
tells them it makes no sense separated like that and should be put
back together?

>> the only possible solution is for each new contributor to have a
>> mentor who sticks with them throughout the process of getting their
>> first contribution accepted

I don't know how common it is, but I felt that Bruce did that for me
when I worked on the standard_conforming_strings TODO item for 8.2.
(Perhaps part of the reason was that it was urgently needed to address
problems we found in production after we converted a critical database
to PostgreSQL; but whatever the reason, I was grateful for the help.)
Having gone through that experience, I feel confident that such
assistance for first-time contributors can make a difference both in
the success of their efforts (which will then, presumably, benefit the
community in general) and in their willingness to contribute in other
ways.

>> It would also help if people on this list *in general*, were to be
>> a bit more consistent about phrasing criticism as constructive
>> criticism. I've seen far too much "how stupid are you?" on this
>> list for the good health of our developer community.
>
> I don't see very much of this at all, so maybe this is another area
> where it boils down to perspective.

I don't see much of that either, although describing another's
statement as "nonsense" or something similar isn't unheard of. It's
not usually an unfair characterization, but some could take such
bluntness as hostility.

-Kevin


From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
Cc: pgsql-hackers(at)postgresql(dot)org, "Robert Haas" <robertmhaas(at)gmail(dot)com>, "<Josh Berkus" <josh(at)postgresql(dot)org>
Subject: Re: Patch committers
Date: 2009-11-12 23:53:07
Message-ID: 19394.1258069987@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

"Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov> writes:
> On the subject topic, I have to say that I don't see where Robert
> hasn't met the qualifications mentioned so far on this thread as
> required to promote someone to the committer level; are there some
> requirements which exist but haven't been mentioned?

He hasn't actually written all that much *code* ... yet, anyway.

Historically, we've promoted people to being committers when
(a) the existing committers got tired of applying patches from them
and (b) their patches were usually going in without significant
modification. (a) speaks to whether you do enough work regularly enough
that there's actually a benefit to the project from giving you the keys
to the car, and (b) speaks to whether you're ready in terms of technical
knowledge of the code base. (I'm not saying you have to be competent
in the whole PG code base, just whatever part you like to work on.)

Now those criteria were developed to deal mainly with people committing
their own patches. What we have at the moment is a lot of patches
coming in from people who aren't ready to be committers, and maybe don't
ever want to be. The question is how to do an adequate job of reviewing
their patches, when only a fraction of the existing committers are
willing to put time into reviewing other people's patches. (Let's face
it, that's a lot less fun than writing your own code.) While I'm not
against promoting more committers to deal with the influx of patches,
the only way I know for people to get to the skill level of being fully
competent reviewers is to have done a lot of patch writing themselves.

Years ago, somebody (I think one of the original Berkeley crew) remarked
"this project doesn't need a lot of people with a little time, it needs
a few people with a lot of time". I'm afraid that's still true, and
it's still hard to find those people.

regards, tom lane


From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov>, pgsql-hackers(at)postgresql(dot)org, "<Josh Berkus" <josh(at)postgresql(dot)org>
Subject: Re: Patch committers
Date: 2009-11-13 01:19:53
Message-ID: 603c8f070911121719p5f7f40bcn6cf898fa198aaf8c@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Thu, Nov 12, 2009 at 6:53 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> Now those criteria were developed to deal mainly with people committing
> their own patches.  What we have at the moment is a lot of patches
> coming in from people who aren't ready to be committers, and maybe don't
> ever want to be.  The question is how to do an adequate job of reviewing
> their patches, when only a fraction of the existing committers are
> willing to put time into reviewing other people's patches.  (Let's face
> it, that's a lot less fun than writing your own code.)

I kind of like reviewing, actually. It's a good way to get familiar
with new parts of the code. That's part of the coolness of open
source: other people do a lot of your work for you. Of course, that
doesn't mean I would want to ONLY review other people's patches and
never write any of my own.

> While I'm not
> against promoting more committers to deal with the influx of patches,
> the only way I know for people to get to the skill level of being fully
> competent reviewers is to have done a lot of patch writing themselves.
>
> Years ago, somebody (I think one of the original Berkeley crew) remarked
> "this project doesn't need a lot of people with a little time, it needs
> a few people with a lot of time".  I'm afraid that's still true, and
> it's still hard to find those people.

No, I think it's hard to find those people's salaries. I feel like
I've managed a fairly good stream of patches given that this is
something I do mostly between 8 PM and midnight after working a full
day and in between other things that I need to get done, but if I were
getting paid to hack on PostgreSQL full time (or even one or two days
a week) that stream would be a whole lot bigger.

...Robert


From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Josh Berkus <josh(at)agliodbs(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-13 01:46:13
Message-ID: 200911130146.nAD1kD518708@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Josh Berkus wrote:
> paying attention to and which they shouldn't. I *thought* that Bruce
> was doing that for AsterData, but apparently not.

Josh, two days ago you complained I that I mentioned 'search_path' when
we were talking about postgresql.conf, now you have another complaint
about me. Did you get appointed network nanny recently? I never got
that email.

--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ If your life is a hard drive, Christ can be your backup. +


From: Greg Smith <greg(at)2ndquadrant(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov>, pgsql-hackers(at)postgresql(dot)org, Robert Haas <robertmhaas(at)gmail(dot)com>, "<Josh Berkus" <josh(at)postgresql(dot)org>
Subject: Re: Patch committers
Date: 2009-11-13 01:55:55
Message-ID: 4AFCBCAB.9010901@2ndquadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Tom Lane wrote:
> While I'm not against promoting more committers to deal with the influx of patches,
> the only way I know for people to get to the skill level of being fully
> competent reviewers is to have done a lot of patch writing themselves.
>
The dynamic going on right now is that many people who might otherwise
be writing their own patches are instead doing patch review to try and
keep the project as a whole moving forward. I actually had two off-list
discussions about that just today, that topic pops up pretty regularly
as I talk with contributors at all levels.

Since most people have an upper limit on how much community time they
can spend, every minute spent reviewing is one you're not working on
your own patches during. The way you're describing the qualification
process, it would be easy to conclude that there's a reviewer ladder,
and a developer ladder, and only climbing the latter leads to being a
committer--that no matter how much review you do, it doesn't really
count as a committer grade skill.

I'm not sure that's the message you want to be sending, because anyone
who dreams of being a committer is going to stay as far away from doing
review as they can if that notion spreads. Based on the growing
frustration with "doing review doesn't leave me with time for my own
patches" I keep hearing, that perception is already something to be wary
of. If the primary criteria is generating patches that apply with
minimal changes, you could make a case that someone who's gotten skilled
enough as a reviewer to only pass through patches of that quality should
get some recognition even if they didn't write them. That's clearly a
useful subset of the skills needed to commit patches only if they look
to be ready for it.

--
Greg Smith 2ndQuadrant Baltimore, MD
PostgreSQL Training, Services and Support
greg(at)2ndQuadrant(dot)com www.2ndQuadrant.com


From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Greg Smith <greg(at)2ndquadrant(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov>, pgsql-hackers(at)postgresql(dot)org, "<Josh Berkus" <josh(at)postgresql(dot)org>
Subject: Re: Patch committers
Date: 2009-11-13 01:58:27
Message-ID: 603c8f070911121758j466e5689ydab208e2b749d90e@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Thu, Nov 12, 2009 at 8:55 PM, Greg Smith <greg(at)2ndquadrant(dot)com> wrote:
> I'm not sure that's the message you want to be sending, because anyone who
> dreams of being a committer is going to stay as far away from doing review
> as they can if that notion spreads.

To say nothing of CommitFest management.

...Robert


From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Greg Smith <greg(at)2ndquadrant(dot)com>
Cc: Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov>, pgsql-hackers(at)postgresql(dot)org, Robert Haas <robertmhaas(at)gmail(dot)com>, "<Josh Berkus" <josh(at)postgresql(dot)org>
Subject: Re: Patch committers
Date: 2009-11-13 06:35:12
Message-ID: 25599.1258094112@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Greg Smith <greg(at)2ndquadrant(dot)com> writes:
> Since most people have an upper limit on how much community time they
> can spend, every minute spent reviewing is one you're not working on
> your own patches during. The way you're describing the qualification
> process, it would be easy to conclude that there's a reviewer ladder,
> and a developer ladder, and only climbing the latter leads to being a
> committer--that no matter how much review you do, it doesn't really
> count as a committer grade skill.

Well, we only instituted the commitfest system last year; before that
there wasn't any formal concept of people reviewing patches at all.
Nobody has yet been promoted to committer on the basis of their
reviewing work, but I don't wish to suggest that it couldn't happen.

> I'm not sure that's the message you want to be sending, because anyone
> who dreams of being a committer is going to stay as far away from doing
> review as they can if that notion spreads. Based on the growing
> frustration with "doing review doesn't leave me with time for my own
> patches" I keep hearing, that perception is already something to be wary
> of.

I'll let you in on a secret: it feels about like that in the committer
trenches too.

At this point it seems that one of the major practical reasons for
appointing new committers would be their willingness to help with
review/commit of incoming patches. If anyone is thinking there's
a ladder they can climb that doesn't have that responsibility at
the top, I'm afraid they're mistaken.

regards, tom lane


From: Craig Ringer <craig(at)postnewspapers(dot)com(dot)au>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-14 03:55:42
Message-ID: 4AFE2A3E.2040005@postnewspapers.com.au
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

(I'm not sure I should piping up here, so feel free to ignore, but
perhaps I have something small to offer. I've been following the list
for a while, but try to keep my mouth shut.)

On 13/11/2009 3:07 AM, Selena Deckelmann wrote:

> * Distributed revision control as standard for the project

This would also make it a lot easier to track in-progress work on
particular features of interest, allowing interested users to help with
advance testing of early versions of major feature work. Chasing patches
on a mailing list is not an attractive way to try to keep up with
someone's in-progress work, and is demotivating to people interested in
testing that work. Think: HOT, warm standby, etc.

It also helps with the issue where a patch is posted, followed by short
thread of corrections and changes you have to manually apply to reach
(you hope) the same codebase others are testing. Sure, sometimes a
follow-up patch is posted with the changes, but often not.

I also found one comment of Tom Lane's really interesting:

> The question is how to do an adequate job of reviewing
> their patches, when only a fraction of the existing committers are
> willing to put time into reviewing other people's patches. (Let's face
> it, that's a lot less fun than writing your own code.)

Perhaps I'm strange, but I personally enjoy patch review. I often think
others are smarter and better at creative, new development - but their
work often needs polish and cleanup, makes mistakes with internal APIs,
etc. It feels like something I can contribute usefully, and it's a role
I've had in PoDoFo among other projects. I naturally gravitate toward
cleanup and patch review, but I'm not generally much good at major
feature work.

Is it possible that it's worth inviting committers who're primarily
interested in patch review, not their own original work? I'd be
surprised if there weren't interested, competent people. I might be one
of them if I didn't fail quite so profoundly on the latter point. If
somebody isn't feeling constantly frustrated by the perceived burden of
reviewing others' work taking time out of their own, they might be less
prone to burn-out.

As for gaining the required competence without doing a lot of first-hand
development on the codebase: Much as a committer may focus mainly on one
area of Pg's codebase and may not be competent to make unsupervised /
unassisted changes in another, surely patch reviewer-committers could
also have a few areas of interest and focus on patches touching those
areas? Especially with review of patches by several different people
with different areas of interest touched on by a given patch, it may not
require globally competent reviewers to ensure good patch quality.

--
Craig Ringer


From: Magnus Hagander <magnus(at)hagander(dot)net>
To: Craig Ringer <craig(at)postnewspapers(dot)com(dot)au>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-14 09:11:10
Message-ID: 9837222c0911140111ndc3c350x99f4ac33bccceb54@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Sat, Nov 14, 2009 at 04:55, Craig Ringer <craig(at)postnewspapers(dot)com(dot)au> wrote:
> (I'm not sure I should piping up here, so feel free to ignore, but
> perhaps I have something small to offer. I've been following the list
> for a while, but try to keep my mouth shut.)

Meh. All constructive input is welcome!

> On 13/11/2009 3:07 AM, Selena Deckelmann wrote:
>
>> * Distributed revision control as standard for the project
>
> This would also make it a lot easier to track in-progress work on
> particular features of interest, allowing interested users to help with
> advance testing of early versions of major feature work. Chasing patches
> on a mailing list is not an attractive way to try to keep up with
> someone's in-progress work, and is demotivating to people interested in
> testing that work. Think: HOT, warm standby, etc.
>
> It also helps with the issue where a patch is posted, followed by short
> thread of corrections and changes you have to manually apply to reach
> (you hope) the same codebase others are testing. Sure, sometimes a
> follow-up patch is posted with the changes, but often not.

This is probably most important for large patches, but the line where
it becomes useful is very fuzzy. I think it's helpful at a much lower
complexity level than most people realize.

I think we should encourage more poeple to use this. How can we do that?

Perhaps we can put an encouragement in the description how to submit a patch?

How about we add specific feature(s) about tihs to the commitfest
management tool? Like the possibility to directly link a git
repo/branch with the patch?

--
Magnus Hagander
Me: http://www.hagander.net/
Work: http://www.redpill-linpro.com/


From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Magnus Hagander <magnus(at)hagander(dot)net>
Cc: Craig Ringer <craig(at)postnewspapers(dot)com(dot)au>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-14 12:35:09
Message-ID: 603c8f070911140435r1bb24af9udabff19eb879c225@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Sat, Nov 14, 2009 at 4:11 AM, Magnus Hagander <magnus(at)hagander(dot)net> wrote:
> How about we add specific feature(s) about tihs to the commitfest
> management tool? Like the possibility to directly link a git
> repo/branch with the patch?

So two fields, one for the repo URL and one for the branch name?

...Robert


From: Magnus Hagander <magnus(at)hagander(dot)net>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Craig Ringer <craig(at)postnewspapers(dot)com(dot)au>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-14 14:31:47
Message-ID: 9837222c0911140631r39a38adj354c48af7522958d@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Sat, Nov 14, 2009 at 13:35, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
> On Sat, Nov 14, 2009 at 4:11 AM, Magnus Hagander <magnus(at)hagander(dot)net> wrote:
>> How about we add specific feature(s) about tihs to the commitfest
>> management tool? Like the possibility to directly link a git
>> repo/branch with the patch?
>
> So two fields, one for the repo URL and one for the branch name?

Yeah, I think that's it. It might actually be interesting to pull the
latest version date and make a note in the cf management stuff
automagically in case there the git repo has a more updated version
than the one that was submitted. I think that could be quite useful -
shouldn't be too hard to do, I think. Probably just a cron job that
updates a third col in the db?

--
Magnus Hagander
Me: http://www.hagander.net/
Work: http://www.redpill-linpro.com/


From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Magnus Hagander <magnus(at)hagander(dot)net>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, Craig Ringer <craig(at)postnewspapers(dot)com(dot)au>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-16 01:08:50
Message-ID: 200911160108.nAG18oE14290@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Magnus Hagander wrote:
> On Sat, Nov 14, 2009 at 13:35, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
> > On Sat, Nov 14, 2009 at 4:11 AM, Magnus Hagander <magnus(at)hagander(dot)net> wrote:
> >> How about we add specific feature(s) about tihs to the commitfest
> >> management tool? Like the possibility to directly link a git
> >> repo/branch with the patch?
> >
> > So two fields, one for the repo URL and one for the branch name?
>
> Yeah, I think that's it. It might actually be interesting to pull the
> latest version date and make a note in the cf management stuff
> automagically in case there the git repo has a more updated version
> than the one that was submitted. I think that could be quite useful -
> shouldn't be too hard to do, I think. Probably just a cron job that
> updates a third col in the db?

Can you get git to dynamically generate a tree diff via a URL? That
would be nice. Extra points for a context diff. ;-)

--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ If your life is a hard drive, Christ can be your backup. +


From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: Magnus Hagander <magnus(at)hagander(dot)net>, Craig Ringer <craig(at)postnewspapers(dot)com(dot)au>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-16 01:32:35
Message-ID: 603c8f070911151732v655b5db5l2a7912137e1fa0ca@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Sun, Nov 15, 2009 at 8:08 PM, Bruce Momjian <bruce(at)momjian(dot)us> wrote:
> Magnus Hagander wrote:
>> On Sat, Nov 14, 2009 at 13:35, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>> > On Sat, Nov 14, 2009 at 4:11 AM, Magnus Hagander <magnus(at)hagander(dot)net> wrote:
>> >> How about we add specific feature(s) about tihs to the commitfest
>> >> management tool? Like the possibility to directly link a git
>> >> repo/branch with the patch?
>> >
>> > So two fields, one for the repo URL and one for the branch name?
>>
>> Yeah, I think that's it. It might actually be interesting to pull the
>> latest version date and make a note in the cf management stuff
>> automagically in case there the git repo has a more updated version
>> than the one that was submitted. I think that could be quite useful -
>> shouldn't be too hard to do, I think. Probably just a cron job that
>> updates a third col in the db?
>
> Can you get git to dynamically generate a tree diff via a URL?  That
> would be nice.  Extra points for a context diff.  ;-)

I dunno about the automated comment generation thing. Seems like it
could generate a lot of comment spam inside the app. Also, I'm not
sure if we really want to move away from the mailing list as the
primary way of sharing patches. One nice thing about having them on
the mailing list is that it is a permanent archive. Another is that
it it is a "push" mechanism - you don't have to go to the CommitFest
app and notice, hey, there are new patches here, or new versions of
existing patches. You just read your email and there they are.

I'm not averse to adding fields for repo and branch; that seems pretty
uncontroversial, since they'll be optional and those who don't want to
use them needn't. But I think the rest of this needs a bit more
thought. Just MHO, of course.

...Robert


From: Magnus Hagander <magnus(at)hagander(dot)net>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, Craig Ringer <craig(at)postnewspapers(dot)com(dot)au>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-16 08:02:54
Message-ID: 9837222c0911160002w3d8dd8d3i4899a912ab4937b0@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Mon, Nov 16, 2009 at 02:08, Bruce Momjian <bruce(at)momjian(dot)us> wrote:
> Magnus Hagander wrote:
>> On Sat, Nov 14, 2009 at 13:35, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>> > On Sat, Nov 14, 2009 at 4:11 AM, Magnus Hagander <magnus(at)hagander(dot)net> wrote:
>> >> How about we add specific feature(s) about tihs to the commitfest
>> >> management tool? Like the possibility to directly link a git
>> >> repo/branch with the patch?
>> >
>> > So two fields, one for the repo URL and one for the branch name?
>>
>> Yeah, I think that's it. It might actually be interesting to pull the
>> latest version date and make a note in the cf management stuff
>> automagically in case there the git repo has a more updated version
>> than the one that was submitted. I think that could be quite useful -
>> shouldn't be too hard to do, I think. Probably just a cron job that
>> updates a third col in the db?
>
> Can you get git to dynamically generate a tree diff via a URL?  That
> would be nice.  Extra points for a context diff.  ;-)

yes, easily. Just pass it the commit id. And unlike cvs, there is one
diff for the patch, not one for every file ;)
For example:
http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=d3359020ef7e0fba02ac552d88ede0c3ce5128cc

turning it into context-diff style will require patching gitweb
though, it doesn't do that by default.

--
Magnus Hagander
Me: http://www.hagander.net/
Work: http://www.redpill-linpro.com/


From: Magnus Hagander <magnus(at)hagander(dot)net>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Bruce Momjian <bruce(at)momjian(dot)us>, Craig Ringer <craig(at)postnewspapers(dot)com(dot)au>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-16 08:05:00
Message-ID: 9837222c0911160005s257ac295v74b037b13a05fb29@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Mon, Nov 16, 2009 at 02:32, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
> On Sun, Nov 15, 2009 at 8:08 PM, Bruce Momjian <bruce(at)momjian(dot)us> wrote:
>> Magnus Hagander wrote:
>>> On Sat, Nov 14, 2009 at 13:35, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>>> > On Sat, Nov 14, 2009 at 4:11 AM, Magnus Hagander <magnus(at)hagander(dot)net> wrote:
>>> >> How about we add specific feature(s) about tihs to the commitfest
>>> >> management tool? Like the possibility to directly link a git
>>> >> repo/branch with the patch?
>>> >
>>> > So two fields, one for the repo URL and one for the branch name?
>>>
>>> Yeah, I think that's it. It might actually be interesting to pull the
>>> latest version date and make a note in the cf management stuff
>>> automagically in case there the git repo has a more updated version
>>> than the one that was submitted. I think that could be quite useful -
>>> shouldn't be too hard to do, I think. Probably just a cron job that
>>> updates a third col in the db?
>>
>> Can you get git to dynamically generate a tree diff via a URL?  That
>> would be nice.  Extra points for a context diff.  ;-)
>
> I dunno about the automated comment generation thing.  Seems like it
> could generate a lot of comment spam inside the app.  Also, I'm not
> sure if we really want to move away from the mailing list as the
> primary way of sharing patches.  One nice thing about having them on
> the mailing list is that it is a permanent archive.  Another is that
> it it is a "push" mechanism - you don't have to go to the CommitFest
> app and notice, hey, there are new patches here, or new versions of
> existing patches.  You just read your email and there they are.

Yeah, I agree.

> I'm not averse to adding fields for repo and branch; that seems pretty
> uncontroversial, since they'll be optional and those who don't want to
> use them needn't.  But I think the rest of this needs a bit more
> thought.  Just MHO, of course.

Just to be clear, I wasn't suggesting auto-adding comments. I was just
suggesting adding a flag that'll put some kind of marker on the line
saying "there's something newer in the git repo". Obviously only if
the git repo has been specified, and not mandatory.

The idea being to encourage people to use git, not force them to :-)
And exploiting the extra value we get from git for patches that do
change often.

It's not a replacement - the current policy of posting patches to the
list is still the way they should be submitted. It's just an extra
tool.

--
Magnus Hagander
Me: http://www.hagander.net/
Work: http://www.redpill-linpro.com/


From: Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>
To: Magnus Hagander <magnus(at)hagander(dot)net>
Cc: Bruce Momjian <bruce(at)momjian(dot)us>, Robert Haas <robertmhaas(at)gmail(dot)com>, Craig Ringer <craig(at)postnewspapers(dot)com(dot)au>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-16 09:20:37
Message-ID: 4B011965.7090807@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Magnus Hagander wrote:
> On Mon, Nov 16, 2009 at 02:08, Bruce Momjian <bruce(at)momjian(dot)us> wrote:
>> Magnus Hagander wrote:
>>> On Sat, Nov 14, 2009 at 13:35, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>>>> On Sat, Nov 14, 2009 at 4:11 AM, Magnus Hagander <magnus(at)hagander(dot)net> wrote:
>>>>> How about we add specific feature(s) about tihs to the commitfest
>>>>> management tool? Like the possibility to directly link a git
>>>>> repo/branch with the patch?
>>>> So two fields, one for the repo URL and one for the branch name?
>>> Yeah, I think that's it. It might actually be interesting to pull the
>>> latest version date and make a note in the cf management stuff
>>> automagically in case there the git repo has a more updated version
>>> than the one that was submitted. I think that could be quite useful -
>>> shouldn't be too hard to do, I think. Probably just a cron job that
>>> updates a third col in the db?
>> Can you get git to dynamically generate a tree diff via a URL? That
>> would be nice. Extra points for a context diff. ;-)
>
> yes, easily. Just pass it the commit id. And unlike cvs, there is one
> diff for the patch, not one for every file ;)
> For example:
> http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=d3359020ef7e0fba02ac552d88ede0c3ce5128cc
>
> turning it into context-diff style will require patching gitweb
> though, it doesn't do that by default.

Any idea how the get the equivalent of "git diff <branch A> <branch B>"
through the web interface?

--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com


From: Magnus Hagander <magnus(at)hagander(dot)net>
To: Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>
Cc: Bruce Momjian <bruce(at)momjian(dot)us>, Robert Haas <robertmhaas(at)gmail(dot)com>, Craig Ringer <craig(at)postnewspapers(dot)com(dot)au>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-16 09:30:53
Message-ID: 9837222c0911160130h6d679523kb0cc109fca9958d7@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Mon, Nov 16, 2009 at 10:20, Heikki Linnakangas
<heikki(dot)linnakangas(at)enterprisedb(dot)com> wrote:
> Magnus Hagander wrote:
>> On Mon, Nov 16, 2009 at 02:08, Bruce Momjian <bruce(at)momjian(dot)us> wrote:
>>> Magnus Hagander wrote:
>>>> On Sat, Nov 14, 2009 at 13:35, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>>>>> On Sat, Nov 14, 2009 at 4:11 AM, Magnus Hagander <magnus(at)hagander(dot)net> wrote:
>>>>>> How about we add specific feature(s) about tihs to the commitfest
>>>>>> management tool? Like the possibility to directly link a git
>>>>>> repo/branch with the patch?
>>>>> So two fields, one for the repo URL and one for the branch name?
>>>> Yeah, I think that's it. It might actually be interesting to pull the
>>>> latest version date and make a note in the cf management stuff
>>>> automagically in case there the git repo has a more updated version
>>>> than the one that was submitted. I think that could be quite useful -
>>>> shouldn't be too hard to do, I think. Probably just a cron job that
>>>> updates a third col in the db?
>>> Can you get git to dynamically generate a tree diff via a URL?  That
>>> would be nice.  Extra points for a context diff.  ;-)
>>
>> yes, easily. Just pass it the commit id. And unlike cvs, there is one
>> diff for the patch, not one for every file ;)
>> For example:
>> http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=d3359020ef7e0fba02ac552d88ede0c3ce5128cc
>>
>> turning it into context-diff style will require patching gitweb
>> though, it doesn't do that by default.
>
> Any idea how the get the equivalent of "git diff <branch A> <branch B>"
> through the web interface?

I don't think you can - but it's probably not a huge thing to implement it.

--
Magnus Hagander
Me: http://www.hagander.net/
Work: http://www.redpill-linpro.com/


From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Magnus Hagander <magnus(at)hagander(dot)net>
Cc: Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>, Bruce Momjian <bruce(at)momjian(dot)us>, Craig Ringer <craig(at)postnewspapers(dot)com(dot)au>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch committers
Date: 2009-11-16 14:29:16
Message-ID: 603c8f070911160629y11b807f2x4e2eb790e9b20bdd@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Mon, Nov 16, 2009 at 4:30 AM, Magnus Hagander <magnus(at)hagander(dot)net> wrote:
> On Mon, Nov 16, 2009 at 10:20, Heikki Linnakangas
> <heikki(dot)linnakangas(at)enterprisedb(dot)com> wrote:
>> Magnus Hagander wrote:
>>> On Mon, Nov 16, 2009 at 02:08, Bruce Momjian <bruce(at)momjian(dot)us> wrote:
>>>> Magnus Hagander wrote:
>>>>> On Sat, Nov 14, 2009 at 13:35, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>>>>>> On Sat, Nov 14, 2009 at 4:11 AM, Magnus Hagander <magnus(at)hagander(dot)net> wrote:
>>>>>>> How about we add specific feature(s) about tihs to the commitfest
>>>>>>> management tool? Like the possibility to directly link a git
>>>>>>> repo/branch with the patch?
>>>>>> So two fields, one for the repo URL and one for the branch name?
>>>>> Yeah, I think that's it. It might actually be interesting to pull the
>>>>> latest version date and make a note in the cf management stuff
>>>>> automagically in case there the git repo has a more updated version
>>>>> than the one that was submitted. I think that could be quite useful -
>>>>> shouldn't be too hard to do, I think. Probably just a cron job that
>>>>> updates a third col in the db?
>>>> Can you get git to dynamically generate a tree diff via a URL?  That
>>>> would be nice.  Extra points for a context diff.  ;-)
>>>
>>> yes, easily. Just pass it the commit id. And unlike cvs, there is one
>>> diff for the patch, not one for every file ;)
>>> For example:
>>> http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=d3359020ef7e0fba02ac552d88ede0c3ce5128cc
>>>
>>> turning it into context-diff style will require patching gitweb
>>> though, it doesn't do that by default.
>>
>> Any idea how the get the equivalent of "git diff <branch A> <branch B>"
>> through the web interface?
>
> I don't think you can - but it's probably not a huge thing to implement it.

I think git log <branch A>...<branch B> would also be really useful.
If you update your patches by merging rather than rebasing, the
existing gitweb view is nearly useless. I'm astonished this hasn't
bothered any of the kernel developers enough for them to fix it. But
then maybe they use the same workaround I do: the command-line.

...Robert