calcite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Julian Hyde <jh...@apache.org>
Subject Re: [DISCUSS] Where do we draw the line?
Date Thu, 18 Oct 2018 19:37:00 GMT
I’m not too concerned about the "Do you aim to get an entry in accidentallyquadratic?”
comment — it could be interpreted humorously, if it were not at a end of a long, contentious
review thread.

I am more concerned that it was a long contentious review thread. The problem is that Vladimir
is dogmatic. He makes a point, that point is acknowledged by the other party, but he absolutely
refuses to give ground. This occurs on the issue of messages for assert statements, and on
the issue of the O(n ^ 2) performance of the algorithm.

There is no path to consensus, other than yielding to Vladimir.

I have experienced this behavior also. I had fixed a bug — the expression “TRUE IS FALSE”
was being simplified to TRUE — and Vladimir vetoed my fix on the “technical grounds”
that I had added tests without sufficient error messages. The veto left me absolutely furious,
and I seriously considered leaving the community. I surmise that other people who are on the
receiving end of his criticism may feel the same way.

I appreciate Vladimir’s efforts reviewing code, and I appreciate his high standards, but
he needs to change his communication style.

Perhaps it would be useful if we discuss under what circumstances a committer can veto a change.
ASF policy [1] says the following:

> Votes on code modifications follow a different model. In
> this scenario, a negative vote constitutes a veto, which
> cannot be overridden.

> If the R-T-C policy is in effect, a positive vote carries the
> very strong implied message, 'I have tested this patch
> myself, and found it good.' Similarly, a negative vote
> usually means that the patch was tested and found to
> be not -good, although the veto (for such it is in this
> case) may be based on other technical grounds.

I think we need to clarify what “technical grounds" means. Introducing a security hole would
certainly qualify. As would introducing a bug in user-visible functionality (if the same change
were not removing a more serious bug). But in less clear-cut cases, where the purported “technical
grounds” are disputed or subjective, I think a consensus of other committers should override
a veto.

To be clear, the “technical grounds” veto is very important. But if the threat of it is
preventing consensus building, we need to look at it carefully. Removing the veto threat forces
reviewers build consensus, to persuade rather than cajole; it reduces the power of committers
over non-committers, and encourages us to treat each other as equals.

The commit veto is the “nuclear option” and I, for one, hope that it is never used again
in this project.

Julian

[1] https://www.apache.org/foundation/voting.html <https://www.apache.org/foundation/voting.html>



> On Oct 18, 2018, at 11:35 AM, Jesus Camacho Rodriguez <jcamachorodriguez@hortonworks.com>
wrote:
> 
> Is it OK for a PMC member of this community to engage with a new contributor to the project
in this way?
> https://github.com/apache/calcite/commit/b470a0cd4572c9f6c4c0e9b51926b97c5af58d3f#r30950660
> 
> I wanted to bring everyone´s attention to the issue because I do not believe this behavior
contributes to the health of the project, welcoming new contributions, etc. The same could
have been said in a very different way, and I do not think Zoltan was engaging disrespectfully.
> 
> I am not sure whether I am overreacting, I would like to hear others opinion. Does anyone
else in the PMC find this disturbing? Does the ASF provide clear guidelines about how members
of a community should engage with each other?
> 
> Thanks,
> Jesús


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message