Re: Add bms_offset_members() function for bitshifting Bitmapsets

David Rowley <dgrowleyml@gmail.com>

From: David Rowley <dgrowleyml@gmail.com>
To: Greg Burd <greg@burd.me>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Chao Li <li.evan.chao@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2026-07-08T13:20:43Z
Lists: pgsql-hackers
On Tue, 21 Apr 2026 at 13:40, David Rowley <dgrowleyml@gmail.com> wrote:
> Not at this stage. The v1 patch did modify the set in-place, so the
> code is there if we ever need it. I didn't find any need for it in our
> current code. The selective tuple deforming patch I'm working on could
> use it, but I doubt it's worth the trouble for 1 caller. It's just for
> something that happens during create_plan(), so 1 more allocation in
> that code likely isn't going to be noticed.

After some small adjustments to some comments and reducing the number
of iterations in test_random_offset_operations(), I pushed the patch.

The 10000 iterations were pushing the test time to about 91ms, which
seemed like quite a big jump from the ~28ms that it was taking on my
machine.  With 1000, it takes 36ms, which seems like a more reasonable
increase.

Thank you all for the reviews and feedback.

David