Remove bms_first_member().
This function has been semi-deprecated ever since we invented
bms_next_member(). Its habit of scribbling on the input bitmapset
isn't great, plus for sufficiently large bitmapsets it would take
O(N^2) time to complete a loop. Now we have the additional problem
that reducing the input to empty while leaving it still accessible
would violate a planned invariant. So let's just get rid of it,
after updating the few extant callers to use bms_next_member().
Patch by me; thanks to Nathan Bossart and Richard Guo for review.
Discussion: https://postgr.es/m/1159933.1677621588@sss.pgh.pa.us
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/462bb7f12851c215dfc21a88ae0ed4bf7fcb36a3
Modified Files
--------------
contrib/file_fdw/file_fdw.c | 9 ++++---
contrib/sepgsql/dml.c | 3 ++-
src/backend/access/heap/heapam.c | 27 +++++++------------
src/backend/executor/nodeAgg.c | 3 ++-
src/backend/nodes/bitmapset.c | 42 ------------------------------
src/backend/optimizer/plan/subselect.c | 3 ++-
src/backend/parser/parse_expr.c | 2 +-
src/backend/replication/logical/relation.c | 3 ++-
src/include/nodes/bitmapset.h | 1 -
9 files changed, 23 insertions(+), 70 deletions(-)