pg.ddx.io pgsql-committers@postgresql.org mailing list archivehelp / color / mirror / Atom feed
pgsql: Update nbits_set in brin_bloom_union 4+ messages / 1 participants [nested] [flat]
* pgsql: Update nbits_set in brin_bloom_union @ 2024-04-14 16:16 Tomas Vondra <tomas.vondra@postgresql.org> 0 siblings, 0 replies; 4+ messages in thread From: Tomas Vondra @ 2024-04-14 16:16 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Update nbits_set in brin_bloom_union Properly update the number of bits set in the bitmap after merging the filters in brin_bloom_union. This is mostly harmless, as the counter is used only in the output function, which means pageinspect may show incorrect information about the BRIN summary. The counter does not affect correctness. Discovered while adding a regression test comparing indexes built with and without parallelism. The parallel index builds exercise the union procedure when merging results from workers, which is otherwise very hard to do in a test. Which is why this went unnoticed until now. Backpatch through 14, where the BRIN bloom opclasses were introduced. Backpatch-through: 14 Discussion: https://postgr.es/m/1df00a66-db5a-4e66-809a-99b386a06d86%40enterprisedb.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/2f20ced1eb53de396d8a420fa5cffca2a2376de4 Modified Files -------------- src/backend/access/brin/brin_bloom.c | 3 +++ 1 file changed, 3 insertions(+) ^ permalink raw reply [nested|flat] 4+ messages in thread
* pgsql: Update nbits_set in brin_bloom_union @ 2024-04-14 16:17 Tomas Vondra <tomas.vondra@postgresql.org> 0 siblings, 0 replies; 4+ messages in thread From: Tomas Vondra @ 2024-04-14 16:17 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Update nbits_set in brin_bloom_union Properly update the number of bits set in the bitmap after merging the filters in brin_bloom_union. This is mostly harmless, as the counter is used only in the output function, which means pageinspect may show incorrect information about the BRIN summary. The counter does not affect correctness. Discovered while adding a regression test comparing indexes built with and without parallelism. The parallel index builds exercise the union procedure when merging results from workers, which is otherwise very hard to do in a test. Which is why this went unnoticed until now. Backpatch through 14, where the BRIN bloom opclasses were introduced. Backpatch-through: 14 Discussion: https://postgr.es/m/1df00a66-db5a-4e66-809a-99b386a06d86%40enterprisedb.com Branch ------ REL_16_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/ccd8f0fa1e541e6b59ac2727509cafa6367e5886 Modified Files -------------- src/backend/access/brin/brin_bloom.c | 3 +++ 1 file changed, 3 insertions(+) ^ permalink raw reply [nested|flat] 4+ messages in thread
* pgsql: Update nbits_set in brin_bloom_union @ 2024-04-14 16:17 Tomas Vondra <tomas.vondra@postgresql.org> 0 siblings, 0 replies; 4+ messages in thread From: Tomas Vondra @ 2024-04-14 16:17 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Update nbits_set in brin_bloom_union Properly update the number of bits set in the bitmap after merging the filters in brin_bloom_union. This is mostly harmless, as the counter is used only in the output function, which means pageinspect may show incorrect information about the BRIN summary. The counter does not affect correctness. Discovered while adding a regression test comparing indexes built with and without parallelism. The parallel index builds exercise the union procedure when merging results from workers, which is otherwise very hard to do in a test. Which is why this went unnoticed until now. Backpatch through 14, where the BRIN bloom opclasses were introduced. Backpatch-through: 14 Discussion: https://postgr.es/m/1df00a66-db5a-4e66-809a-99b386a06d86%40enterprisedb.com Branch ------ REL_15_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/3cd4135119be0dda37ef810353a3ef2e4444970e Modified Files -------------- src/backend/access/brin/brin_bloom.c | 3 +++ 1 file changed, 3 insertions(+) ^ permalink raw reply [nested|flat] 4+ messages in thread
* pgsql: Update nbits_set in brin_bloom_union @ 2024-04-14 16:18 Tomas Vondra <tomas.vondra@postgresql.org> 0 siblings, 0 replies; 4+ messages in thread From: Tomas Vondra @ 2024-04-14 16:18 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Update nbits_set in brin_bloom_union Properly update the number of bits set in the bitmap after merging the filters in brin_bloom_union. This is mostly harmless, as the counter is used only in the output function, which means pageinspect may show incorrect information about the BRIN summary. The counter does not affect correctness. Discovered while adding a regression test comparing indexes built with and without parallelism. The parallel index builds exercise the union procedure when merging results from workers, which is otherwise very hard to do in a test. Which is why this went unnoticed until now. Backpatch through 14, where the BRIN bloom opclasses were introduced. Backpatch-through: 14 Discussion: https://postgr.es/m/1df00a66-db5a-4e66-809a-99b386a06d86%40enterprisedb.com Branch ------ REL_14_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/ad23af83dad3d341c8ac5b699518fb64eaff88db Modified Files -------------- src/backend/access/brin/brin_bloom.c | 3 +++ 1 file changed, 3 insertions(+) ^ permalink raw reply [nested|flat] 4+ messages in thread
end of thread, other threads:[~2024-04-14 16:18 UTC | newest] Thread overview: 4+ messages (download: mbox mbox.gz follow: Atom feed) -- links below jump to the message on this page -- 2024-04-14 16:16 pgsql: Update nbits_set in brin_bloom_union Tomas Vondra <tomas.vondra@postgresql.org> 2024-04-14 16:17 pgsql: Update nbits_set in brin_bloom_union Tomas Vondra <tomas.vondra@postgresql.org> 2024-04-14 16:17 pgsql: Update nbits_set in brin_bloom_union Tomas Vondra <tomas.vondra@postgresql.org> 2024-04-14 16:18 pgsql: Update nbits_set in brin_bloom_union Tomas Vondra <tomas.vondra@postgresql.org>
This inbox is served by DDX for PostgreSQL; see mirroring instructions for how to clone and mirror all data and code used for this inbox