Re: In-placre persistance change of a relation
От | Heikki Linnakangas |
---|---|
Тема | Re: In-placre persistance change of a relation |
Дата | |
Msg-id | 9d45c156-caad-4197-b77d-47dfbbe74eb4@iki.fi обсуждение исходный текст |
Ответ на | Re: In-placre persistance change of a relation (Kyotaro Horiguchi <horikyota.ntt@gmail.com>) |
Список | pgsql-hackers |
On 31/08/2024 19:09, Kyotaro Horiguchi wrote: > Subject: [PATCH v34 03/16] Remove function for retaining files on outer > transaction aborts > > The function RelationPreserveStorage() was initially created to keep > storage files committed in a subtransaction on the abort of outer > transactions. It was introduced by commit b9b8831ad6 in 2010, but no > use case for this behavior has emerged since then. If we move the > at-commit removal feature of storage files from pendingDeletes to the > UNDO log system, the UNDO system would need to accept the cancellation > of already logged entries, which makes the system overly complex with > no benefit. Therefore, remove the feature. I don't think that's quite right. I don't think this was meant for subtransaction aborts, but to make sure that if the top-transaction aborts after AtEOXact_RelationMap() has already been called, we don't remove the new relation. AtEOXact_RelationMap() is called very late in the commit process to keep the window as small as possible, but if it nevertheless happens, the consequences are pretty bad if you remove a relation file that is in fact needed. -- Heikki Linnakangas Neon (https://neon.tech)
В списке pgsql-hackers по дате отправления: