Re: foreign key locks
От | Alvaro Herrera |
---|---|
Тема | Re: foreign key locks |
Дата | |
Msg-id | 20121113220729.GA12811@alvh.no-ip.org обсуждение исходный текст |
Ответ на | Re: foreign key locks (Noah Misch <noah@leadboat.com>) |
Список | pgsql-hackers |
Noah Misch wrote: > On Wed, Oct 31, 2012 at 05:22:10PM -0300, Alvaro Herrera wrote: > > Not really sure about the proposed syntax, but yes clearly we need some > > other syntax to mean "FOR NON KEY UPDATE". I would rather keep FOR > > UPDATE to mean what I currently call FOR KEY UPDATE. More proposals for > > the other (weaker) lock level welcome (but if you love FOR NON KEY > > UPDATE, please chime in too) > > Agree on having "FOR UPDATE" without any "FOR KEY UPDATE" synonym. For the > weaker lock, I mildly preferred the proposal of "FOR NO KEY UPDATE". NON KEY > captures the idea better in English, but NO is close enough and already part > of the SQL lexicon. This is the proposal I like best; however there is an asymmetry, because the locking options now are FOR KEY SHARE FOR SHARE FOR NO KEY UPDATE FOR UPDATE I used to have comments such as /* Currently, SELECT ... FOR [KEY] UPDATE/SHARE requires UPDATE privileges */ #define ACL_SELECT_FOR_UPDATE ACL_UPDATE but now they are slightly incorrect because the NO is not illustrated. I guess I could use SELECT ... FOR [NO KEY] UPDATE/SHARE but this leaves out the "FOR KEY SHARE" case (and can be thought to introduce a FOR NO KEY SHARE case). And getting much more verbose than that is probably not warranted. In some places I would like the use a phrase like "the locking clause", but I'm not sure that it's clear enough. -- Álvaro Herrera http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services
В списке pgsql-hackers по дате отправления: