Patch that deals with that AtCommit_Portals encounters deleted entries

Поиск
Список
Период
Сортировка
От Thomas Hallgren
Тема Patch that deals with that AtCommit_Portals encounters deleted entries
Дата
Msg-id thhal-0rKf9ArUNxycdrV+HrlHD7RCK+KuCb9@mailblocks.com
обсуждение исходный текст
Ответы Re: Patch that deals with that AtCommit_Portals encounters  (Neil Conway <neilc@samurai.com>)
Re: Patch that deals with that AtCommit_Portals encounters  (Bruce Momjian <pgman@candle.pha.pa.us>)
Re: Patch that deals with that AtCommit_Portals encounters  (Bruce Momjian <pgman@candle.pha.pa.us>)
Список pgsql-patches
This patch will ensure that the hash table iteration performed by
AtCommit_Portals is restarted when a portal is deleted. This is
necessary since the deletion of a portal may cause the deletion of
another which on rare occations may cause the iterator to return a
deleted portal an thus a renewed attempt delete.

Regards,
Thomas Hallgren

Index: src/backend/utils/mmgr/portalmem.c
===================================================================
RCS file: /projects/cvsroot/pgsql/src/backend/utils/mmgr/portalmem.c,v
retrieving revision 1.76.4.1
diff -u -r1.76.4.1 portalmem.c
--- src/backend/utils/mmgr/portalmem.c    26 Jan 2005 23:20:37 -0000    1.76.4.1
+++ src/backend/utils/mmgr/portalmem.c    27 Feb 2005 18:12:49 -0000
@@ -418,12 +418,6 @@
  * materialized form, since we are going to close down the executor and
  * release locks.  Remove all other portals created in this transaction.
  * Portals remaining from prior transactions should be left untouched.
- *
- * XXX This assumes that portals can be deleted in a random order, ie,
- * no portal has a reference to any other (at least not one that will be
- * exercised during deletion).    I think this is okay at the moment, but
- * we've had bugs of that ilk in the past.  Keep a close eye on cursor
- * references...
  */
 void
 AtCommit_Portals(void)
@@ -489,6 +483,9 @@
         {
             /* Zap all non-holdable portals */
             PortalDrop(portal, true);
+
+            /* Restart the iteration */
+            hash_seq_init(&status, PortalHashTable);
         }
     }
 }

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

Предыдущее
От: Bruce Momjian
Дата:
Сообщение: Re: Casting INT4 to BOOL...
Следующее
От: Simon Riggs
Дата:
Сообщение: Re: A way to let Vacuum warn if FSM settings are low.