Re: [HACKERS] Notice: heap_open/close changes committed
От | Vadim Mikheev |
---|---|
Тема | Re: [HACKERS] Notice: heap_open/close changes committed |
Дата | |
Msg-id | 37E58CCF.32C57B87@krs.ru обсуждение исходный текст |
Ответ на | Notice: heap_open/close changes committed (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: [HACKERS] Notice: heap_open/close changes committed
|
Список | pgsql-hackers |
Tom Lane wrote: > > 2. I made most opens of system relations grab AccessShareLock if > read-only, or RowExclusiveLock if read-write, on the theory that ^^^^^^^^^^^^^^^^ > these accesses correspond to an ordinary search or update of a user > relation. This maximizes concurrency of access to the system tables. There are problems here. In the case of normal UPDATE/DELETE (when RowExclusiveLock is acquired) Executor takes care about the-same-row writers, but other parts of system don't check is tuple read being updated concurrent transaction or not. This is the old bug (pre-6.5.X released WRITE lock just after system table was modified). I had no time to fix it and so just changed old WRITE lock with new AccessExclusiveLock. But we have to handle this in proper way (wait if t_xmax is id of an active transaction). Vadim
В списке pgsql-hackers по дате отправления: