5 ms·
The relevant thread: https://www.postgresql.org/message-id/46ED7555-9383-45D2-A5C0-6373BE2FDCB6%40atlassian.com https://www.postgresql.org/message-id/46ED7555-9
by anarazel 8y ago
The relevant thread:
https://www.postgresql.org/message-id/46ED7555-9383-45D2-A5C0-6373BE2FDCB6%40atlassian.com https://www.postgresql.org/message-id/46ED7555-9383-45D2-A5C...
There's literally one person saying that NFS is crapshot anyway, and several +1s for retries. And the former was accompanied with several questions about the concrete implementation.
- georgebarnett 8y agoOne the messages told me to go lobby NFS vendors. Many others were as you note bikeshedding the commit. Only one, if I recall, questioned why it was a controversial patch at all. If you check the patch that was committed eventually, IIRC it’s identical to what I proposed. As I said, I don’t look back particularly favourably on my interactions with the community.
- pgaddict 8y agoWhich of the messages on the thread do you consider as bikeshedding? I personally don't see any - that's not to say I agree with everything said on the thread, but overall it seems like a reasonable discussion. IMHO it's a bit strange to assume everyone will agree with your patch from the very beginning. People may lack proper understanding of the issue, or they may see it from a different angle, and so on. Convincing others that your solution is the right one is an important part of getting patch done. I don't see anything wrong with that.
- javajosh 8y agoLooking at your submission, it was very good: a clean way to reproduce, reference to the specification that tells users of a syscall how to use it. I'm perplexed that you got so much pushback on this when it seemed pretty straight-forward. I'd guess that this was your first patch to postgres and the default reaction is to be defensive and decline the patch. Thinking about the social structure for a minute, I honestly think you might have done better to leave out some of the content of your patch submission, let people push back on the more obvious stuff, and have ready answers. There's a phenomena where curators feel they must push back, and they feel weird when there's nothing to criticize - you can get around this by giving them something to criticize, with a ready-at-hand response! Sorry this happened.
- noir_lord 8y agoI know that as ‘Take out the duck’. http://mamchenkov.net/wordpress/2012/07/23/a-duck/ http://mamchenkov.net/wordpress/2012/07/23/a-duck/
- sam_goody 8y agoSomewhat OT, but that is generally referred to as a duck[1], and it _definitely_ has its uses. > The artist working on the queen animations for Battle Chess... did the animations for the queen the way that he felt would be best, with one addition: he gave the queen a pet duck. He animated this duck through all of the queen’s animations, had it flapping around the corners. He also took great care to make sure that it never overlapped the “actual” animation. > As expected, he was asked to remove the duck, which he did, without altering the real Queen animation. [1]: https://softwareengineering.stackexchange.com/a/122148 https://softwareengineering.stackexchange.com/a/122148
- javajosh 8y agoHaha cool, I've been around a while but I've never heard of this. I wonder if this concept can be combined with confessional debugging, aka rubber-ducking? :)
- acqq 8y agoIt’s sill wrong to suggest to every contributor to put “the duck” in his contribution, when the fact is then that it’s the people who handle the contribution who are the problem.
- stoolpigeon 8y agoI had an American friend who lived in Germany for many years who had a similar approach to dealing with immigration officials. He learned quickly that no matter how thorough he was when applying to extend his stay, his packet would always be "missing" some form. So he started leaving a few forms out of his packet, that way what they asked for was something he already had.
- jancsika 8y ago
- jeffdavis 8y agoI feel this is a little unfair to the community and I encourage others to read the thread before forming a negative opinion. It seems like a fairly good example of an engineering discussion. Even if the patch is correct and conforming and solves a problem, that doesn't mean there is no use for further discussion, and the surrounding discussion does seem to have merit. Things like: * Are there closely-related problems still left unsolved (e.g. retrying reads)? * Is something not configured according to best practices known by other community members? * Expressing an opinion that the use case is dangerous, so that nobody (including other people reading the thread in the future) will take it as an endorsement for running postgres on NFS. * Some legitimate-sounding questions about the specifics of the patch (around zero returns, what writeAll handles versus its callers, etc.). * At least one person agreed with you that it's a reasonable thing to do. I don't think HN is really the right place to assess the technical merits of a postgres patch, but the discussion itself seems well within reasonable bounds.
- nmadden 8y agoThis reply from Tom Lane reminded me of the PC losering issue from the “worse is better” essay [1]. > 2. What is the rationale for supposing that a retry a nanosecond later will help? If it will help, why didn't the kernel just do that? [1] https://www.jwz.org/doc/worse-is-better.html https://www.jwz.org/doc/worse-is-better.html