Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wE0V2-003ZO0-2m for pgsql-hackers@arkaria.postgresql.org; Sat, 18 Apr 2026 07:53:57 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wE0V2-00CUiT-05 for pgsql-hackers@arkaria.postgresql.org; Sat, 18 Apr 2026 07:53:56 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wE0V1-00CUiL-2P for pgsql-hackers@lists.postgresql.org; Sat, 18 Apr 2026 07:53:55 +0000 Received: from mail-wm1-x32f.google.com ([2a00:1450:4864:20::32f]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wE0Uz-00000001mlJ-2zL7 for pgsql-hackers@lists.postgresql.org; Sat, 18 Apr 2026 07:53:55 +0000 Received: by mail-wm1-x32f.google.com with SMTP id 5b1f17b1804b1-4888375f735so15845115e9.3 for ; Sat, 18 Apr 2026 00:53:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776498833; cv=none; d=google.com; s=arc-20240605; b=bwGSNg642DQvSXIr4cdVIpj65AheNWwv8qMWTDiod8w7E2Rk7jz2bXPBQLJYLQsWJM cmgbFKM/NkCk8z86RcCptWOAcbakFK1Vv6AQYtf8yVYeXJSfeQ6sH5+5IQ/tmsFUQuMv BfIlkgDGMVtGL1wqdBQX3uweHh4HuynyrhM3SzIuGvbJC/Tu4axa3245n7XmWGKFm7tl jkndofXLb8EJ14PVzLCOuN0J7TwDAYv3K+2WE4IUG81HIfkKK5MfcB5uTLsH/wyq4HTA CnNWgGZb/td18uyfKzzBNtRDMuUfAMeR8lOKmx8DiY9tSEJ+U9EfuD5QxIjLBGwE8+GT 8gGQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=5UZaJiSO5/NSmJukjkzeBF8UrG0Uu94lP+dmiUEwLyc=; fh=L3Yi2NYgBBhCzxUisWzrd3jbu8UPiKpRwjqpPkCJBPw=; b=AuNSYKn3UIaqlsve96e5OTeGwPwRy4Um1pD/lwVb1D48enq4p2w4JaabjfgpFr8AIb ASRj2sAuFUSw0GCPfueKLkgM3fea1PjKfFTSAhbk857GqCccMY5QbuaAQmSU8qAzk2jC oXbaD6Q1sYi7C4GyP2kXgprPppU7yrlN1rGMA2Tys3jYmJ+V4hR1CklB7tBgMrWvIw1k j9oBpmvu+TtCUAYn2zqPjH+2kSOPy4OLE1SMxgg4ltb9ZSqVzyk4xhl4+Lctq1SRbqfj xCgp+D0xa6+jbSeiF0lqJS9j43NMfW1HAiTRPml7eAlwGivW28rmZ9qju2zux29c7E6q b3wA==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1776498833; x=1777103633; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=5UZaJiSO5/NSmJukjkzeBF8UrG0Uu94lP+dmiUEwLyc=; b=LJPyjFm9onY5OU+Ru8dWaHJ/JjUEhFbLmwYkf6vHnP/DOOKyEjVAKiGt2OX1/3aLem 0hqwR0/ZhrTXVPUCtPhWuCMk4VHxnsp71uHQjBGuRBtZ/RQvSgCVR6IU9EvMJtLfxouR EGYTiXZh3y2ZAJLOVMDuNCD9/X8r2EBIDK7Nx5GOM6Clrs74ziQ83ZAtEy5k8RfNvPbe RbyR9eucT+IU4c0o326nc0L5Q7IjEunD2GgUjZn+xfOWcPNuEkUTc6Vu8Tx+yX0eaMjY 73EXw3y/WQGXd9ibTL75QfAdS6BBI7drkiogqzI9yD6iWJItvfWST44QSSMi7QbOBwd4 O75w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776498833; x=1777103633; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=5UZaJiSO5/NSmJukjkzeBF8UrG0Uu94lP+dmiUEwLyc=; b=MnP6iFU195rz6OtA4mG9PT/oIIeJUyoO8KBsaqFb2wOEWj1xzGjNqE1LWMkfYvAcfa PPSLP58r0hYSQGD7KyI7OCjeTr5gTVB2MmKKoX25JFy4o096WY/FnJYKd4ExZuFkxTlS wfF9j3O93iQgGJEAfm7b57EMa4jBv0/vC8qIqalexzCNIEzZOGXUkyO+MqlrLIM94Wlv pGI8ikZup1DDTiMdt88t2sytvT0JcyKLk6kwBcKv2TiNJsZokSIQ+iluuQAS7nyAogfD M+iq4N1cLL/t3sfxRbfCPlEyhgf1TkoC2+/MgHfhZpFrFPlXXXaM/1RWEYUJa52s0HQY /ErA== X-Forwarded-Encrypted: i=1; AFNElJ9AG0pDQZTXWMyciMgrpxb98hhqQqH8UzOeKyfL/wo60s0dVWTqSrY3WZxhIJHfFyt8LN2bV0AMqItHLxQd@lists.postgresql.org X-Gm-Message-State: AOJu0YwlJQ81Tdp+5Iqd+dt6kRmNFHvsTueqJm5mBnm3Di7JrKb614f2 Htv0P4SBThriAGu48gI/LJ5oPd9z41r5nC1Qlx7tEMVZgQs6j02Rpyg1aYU9qalQV5/yaz7ktMH pvmIB4V8CtOqUnqUJj1dH4aHkXnrCmuA= X-Gm-Gg: AeBDievoZ3G8G26Ey4YnE7u8U5opN4RKqq7SKkHSOeqNZWJFL4K7EGWAPX6DKBsbErC dceMmr+3pMgD+hClmVpVi7yf0MbTQk/x69UosVP+qVr+zXUa+JMf9koKQ9ymY82UD/JFrLV41mv TOez5qFrk9ZkawDiO1bbVkRUcu4dvdU/gataVrxU61KXpWOSe6i85ZW+3rOehtDTBeWKkLL6VA3 JBcRM2CXwzWdhCjG9OzIHo75PjIqafXPYvP0Hr2AZ+rGYzsRsmA/g6NZEJZYeLJjoS2WviBLVvd iupqB8M6Szn7pSC11k3XM8ofVw6ZeBvi10fbCIXUnzeRMaYtui4rt4N7XtL5UiwM1ujjKgE0pKr Jy4g0Nt+J X-Received: by 2002:a05:600c:3150:b0:480:3ad0:93bf with SMTP id 5b1f17b1804b1-488fb7930famr89181995e9.24.1776498832619; Sat, 18 Apr 2026 00:53:52 -0700 (PDT) MIME-Version: 1.0 References: <278B9FE3-F349-4494-99C5-483105C1C999@gmail.com> <1900289.1776212948@sss.pgh.pa.us> <1913188.1776220247@sss.pgh.pa.us> In-Reply-To: From: David Rowley Date: Sat, 18 Apr 2026 19:53:40 +1200 X-Gm-Features: AQROBzC7dvx5NCLK6Zck5ZEWcYJYSlk3oVMLtoE7A5yMsofbBzur3jUffolDHW4 Message-ID: Subject: Re: Add bms_offset_members() function for bitshifting Bitmapsets To: Peter Eisentraut Cc: Tom Lane , Chao Li , PostgreSQL Developers Content-Type: text/plain; charset="UTF-8" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Thu, 16 Apr 2026 at 07:17, Peter Eisentraut wrote: > Depending on what you end up doing, maybe a sprinkling of pg_nodiscard > could be appropriate. Yeah maybe. It wouldn't do any harm, at least. I didn't do that in the patch I just sent as it felt like something we should do or not do for all the bitmapset functions it's relevant for. REALLOCATE_BITMAPSETS is meant to give us a stronger guarantee of people forgetting to do this, as it would cause a breakage if there were multiple pointers to the same set and only one of them got updated. David