Re: PATCH to allow concurrent VACUUMs to not lock each
| От | Tom Lane |
|---|---|
| Тема | Re: PATCH to allow concurrent VACUUMs to not lock each |
| Дата | |
| Msg-id | 7605.1116857766@sss.pgh.pa.us обсуждение исходный текст |
| Ответ на | Re: PATCH to allow concurrent VACUUMs to not lock each (Neil Conway <neilc@samurai.com>) |
| Ответы |
Re: PATCH to allow concurrent VACUUMs to not lock each
|
| Список | pgsql-patches |
Neil Conway <neilc@samurai.com> writes:
> I'm a little worried about having this set to "true" after a VACUUM is
> executed, and only reset to false when the next transaction is begun: it
> shouldn't affect correctness right now, but it seems like asking for
> trouble. Resetting the flag to "false" after processing a transaction
> would probably be worth doing.
These days I'd be inclined to use a PG_TRY construct to guarantee the
flag is cleared, rather than loading another cleanup operation onto
unrelated code.
The MyProc != NULL tests are a waste of code space. You can't even
acquire an LWLock without MyProc being set, let alone access tables.
The real issue here though is whether anyone can blow a hole in the
xmin assumptions: is there any situation where ignoring a vacuum
transaction breaks things? I haven't had time to think about it
in any detail, but it definitely needs to be thought about.
regards, tom lane
В списке pgsql-patches по дате отправления: