pgsql: Change hashscan.c to keep its list of active hash index scans in - Mailing list pgsql-committers

From tgl@postgresql.org (Tom Lane)
Subject pgsql: Change hashscan.c to keep its list of active hash index scans in
Date
Msg-id 20080307155903.AF8CD753F32@cvs.postgresql.org
Whole thread Raw
List pgsql-committers
Log Message:
-----------
Change hashscan.c to keep its list of active hash index scans in
TopMemoryContext, rather than scattered through executor per-query contexts.
This poses no danger of memory leak since the ResourceOwner mechanism
guarantees release of no-longer-needed items.  It is needed because the
per-query context might already be released by the time we try to clean up
the hash scan list.  Report by ykhuang, diagnosis by Heikki.

Back-patch to 8.0, where the ResourceOwner-based cleanup was introduced.
The given test case does not fail before 8.2, probably because we rearranged
transaction abort processing somehow; but this coding is undoubtedly risky
so I'll patch 8.0 and 8.1 anyway.

Modified Files:
--------------
    pgsql/src/backend/access/hash:
        hashscan.c (r1.43 -> r1.44)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/hash/hashscan.c?r1=1.43&r2=1.44)

pgsql-committers by date:

Previous
From: momjian@postgresql.org (Bruce Momjian)
Date:
Subject: pgsql: Add: > o Have \l+ show database size, if permissions allow > >
Next
From: tgl@postgresql.org (Tom Lane)
Date:
Subject: pgsql: Change hashscan.c to keep its list of active hash index scans in