Re: foreign key locks, 2nd attempt

Поиск
Список
Период
Сортировка
От Simon Riggs
Тема Re: foreign key locks, 2nd attempt
Дата
Msg-id CA+U5nM+5c-BtDbQPmZ03iBuaABkK0xW0JF4m24M-9ifi-1mX+A@mail.gmail.com
обсуждение исходный текст
Ответ на Re: foreign key locks, 2nd attempt  (Christopher Browne <cbbrowne@gmail.com>)
Список pgsql-hackers
On Thu, Nov 10, 2011 at 8:17 PM, Christopher Browne <cbbrowne@gmail.com> wrote:
> On Sun, Nov 6, 2011 at 2:28 AM, Jeroen Vermeulen <jtv@xs4all.nl> wrote:
>> On 2011-11-04 01:12, Alvaro Herrera wrote:
>>
>>> I would like some opinions on the ideas on this patch, and on the patch
>>> itself.  If someone wants more discussion on implementation details of
>>> each part of the patch, I'm happy to provide a textual description --
>>> please just ask.
>>
>> Jumping in a bit late here, but thanks for working on this: it looks like it
>> could solve some annoying problems for us.
>>
>> I do find myself idly wondering if those problems couldn't be made to go
>> away more simply given some kind of “I will never ever update this key”
>> constraint.  I'm having trouble picturing the possible lock interactions as
>> it is.  :-)
>
> +1 on that, though I'd make it more general than that.  There's value
> in having an "immutability" constraint on a column, where, in effect,
> you're not allowed to modify the value of the column, once assigned.
> That certainly doesn't prevent issuing DELETE + INSERT to get whatever
> value you want into place, but that's a big enough hoop to need to
> jump through to get rid of some nonsensical updates.
>
> And if the target of a foreign key constraint consists of immutable
> columns, then, yes, indeed, UPDATE on that table no longer conflicts
> with references.
>
> In nearly all cases, I'd expect that SERIAL would be reasonably
> followed by IMMUTABLE.
>
> create table something_assigned (
>   something_id serial immutable primary key,
>   something_identifier text not null unique
> );

This is a good idea but doesn't do what KEY LOCKS are designed to do so.

--
 Simon Riggs                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Andres Freund
Дата:
Сообщение: Re: testing ProcArrayLock patches
Следующее
От: Simon Riggs
Дата:
Сообщение: Re: foreign key locks, 2nd attempt