Re: INSERT ... ON CONFLICT {UPDATE | IGNORE} - Mailing list pgsql-hackers
From | Peter Geoghegan |
---|---|
Subject | Re: INSERT ... ON CONFLICT {UPDATE | IGNORE} |
Date | |
Msg-id | CAM3SWZQBMyCF45zkR2xWtuzt9KFvFMqHu+7k3vEeokqdsTs+qw@mail.gmail.com Whole thread Raw |
In response to | Re: INSERT ... ON CONFLICT {UPDATE | IGNORE} (Andres Freund <andres@2ndquadrant.com>) |
List | pgsql-hackers |
On Tue, Sep 30, 2014 at 2:15 PM, Andres Freund <andres@2ndquadrant.com> wrote: > Well. People have given you outlines of approaches. And Heikki even gave > you a somewhat working prototype. I don't think you can fairly expect > more. I don't expect anything, really. I asked nicely - that's all. I don't know why there is so much discussion of what I expect or don't expect. Things don't work around here by everyone doing only strictly what they're obligated to do. Everyone is strictly obligated to do nothing, when you get right down to it. >> Even still, I would appreciate it if people could >> review the patch on the assumption that those issues will be worked >> out. > > Right now I don't really see the point. You've so far shown no > inclination to accept significant concerns about your approach. And > without an agreement about how to solve the concurrency issues the > feature is dead in the water. And thus time spent reviewing isn't well > spent. > > I'm pretty sure I'm not the only one feeling that way at this point. I think that's *incredibly* unfair. There appears to be broad acceptance of the problems around deadlocking as a result of my work with Heikki. That was a major step forward. Now we all agree on the parameters of the discussion around value locking, AFAICT. There is an actual way forward, and not total quagmire -- great. I had to dig my heals in to win that much, and it wasn't easy. I accept that it probably wasn't easy for other people either, and I am thankful for the effort of other people, particularly Heikki, but also you. >> A couple of weeks >> ago, I felt good about the fact that it seemed "time was on my side" >> 9.5-wise, but maybe that isn't true. Working through the community >> process for this patch is going to be very difficult. > > The community process involves accepting that your opinion isn't the > community's. Believe me, I learned that the hard way. The community doesn't have a worked-out opinion on this either way. Arguably, what you and Simon want to do is closer than what I want to do than what Heikki wants to do - you're still talking about adding locks that are tied to AMs in a fairly fundamental way. But, FWIW, I'd sooner take Heikki's approach than insert promise tuples into indexes directly. I think that Heikki's approach is better. In all honesty, I don't care who "wins", as long as someone does and we get the feature in shape. No one can "win" if all sides are not realistic about the problems. The issues that I've called out about what Heikki has suggested are quite significant issues. Can't we talk about them? Or am I required to polish-up Heikki's approach, and present it at a commitfest, only to have somebody point out the same issues then? I am *not* nitpicking, and the issues are of fundamental importance. Look at the issues I raise and you'll see that's the case. My pointing out of these issues is not some artifice to "win" the argument. I don't appreciate the insinuation that it is. I am completely undeserving of that sort of mistrust. It's insulting. And it's also a total misrepresentation to suggest it's me versus you, Heikki, Robert, and Simon. Opinion is far more divided than you let on, since what you and Simon suggest is far different to what Heikki suggests. Let's figure out a way to reach agreement. > It's one thing to argue about the implementation of a feature for a week > or four. Or even insist that you're right in some implementation detail > local to your new code. But you've not moved one jota in the critical > parts that affect large parts of the system in half a year. You're right. I haven't moved one bit on that. But, on the other hand, I haven't doubled down on the approach either - I have done very little on it, and have given it relatively little thought either way. I preferred to focus my energies on the "top half". Surely you'd agree that that was the logical course of action to take over the last few months. I don't know if you noticed, but I presented this whole new revised version as "this is the thing that gives us the ability to discuss the fundamental issue of value locking". So my suggestion was that if you don't want to have that conversation, at least look at the "top half" a bit. -- Peter Geoghegan
pgsql-hackers by date: