mirror of
https://github.com/postgres/postgres.git
synced 2025-07-30 11:03:19 +03:00
tidbitmap: Support shared iteration.
When a shared iterator is used, each call to tbm_shared_iterate() returns a result that has not yet been returned to any process attached to the shared iterator. In other words, each cooperating processes gets a disjoint subset of the full result set, but all results are returned exactly once. This is infrastructure for parallel bitmap heap scan. Dilip Kumar. The larger patch set of which this is a part has been reviewed and tested by (at least) Andres Freund, Amit Khandekar, Tushar Ahuja, Rafia Sabih, Haribabu Kommi, and Thomas Munro. Discussion: http://postgr.es/m/CAFiTN-uc4=0WxRGfCzs-xfkMYcSEWUC-Fon6thkJGjkh9i=13A@mail.gmail.com
This commit is contained in:
@ -826,7 +826,7 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser
|
||||
|
||||
<tbody>
|
||||
<row>
|
||||
<entry morerows="58"><literal>LWLock</></entry>
|
||||
<entry morerows="59"><literal>LWLock</></entry>
|
||||
<entry><literal>ShmemIndexLock</></entry>
|
||||
<entry>Waiting to find or allocate space in shared memory.</entry>
|
||||
</row>
|
||||
@ -1081,6 +1081,10 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser
|
||||
<entry><literal>parallel_query_dsa</></entry>
|
||||
<entry>Waiting for parallel query dynamic shared memory allocation lock.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>tbm</></entry>
|
||||
<entry>Waiting for TBM shared iterator lock.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry morerows="9"><literal>Lock</></entry>
|
||||
<entry><literal>relation</></entry>
|
||||
|
Reference in New Issue
Block a user