const-qualify ItemPointer comparison functions
authorPeter Eisentraut <peter@eisentraut.org>
Thu, 30 Oct 2025 08:38:52 +0000 (09:38 +0100)
committerPeter Eisentraut <peter@eisentraut.org>
Thu, 30 Oct 2025 09:13:47 +0000 (10:13 +0100)
Add const qualifiers to ItemPointerEquals() and ItemPointerCompare().
This will allow further changes up the stack.  It also complements
commit aeb767ca0b0, as we now have all of itemptr.h appropriately
const-qualified.

Author: Chao Li <li.evan.chao@gmail.com>
Discussion: https://www.postgresql.org/message-id/flat/CAEoWx2nBaypg16Z5ciHuKw66pk850RFWw9ACS2DqqJ_AkKeRsw@mail.gmail.com

src/backend/storage/page/itemptr.c
src/include/storage/itemptr.h

index ad658215721948db6a1f22ccfdaa756ce6e17ce7..cedb27d6cc5afd6f8b1ce5cd5e0f8e81dfda0eb6 100644 (file)
@@ -32,7 +32,7 @@ StaticAssertDecl(sizeof(ItemPointerData) == 3 * sizeof(uint16),
  * Asserts that the disk item pointers are both valid!
  */
 bool
-ItemPointerEquals(ItemPointer pointer1, ItemPointer pointer2)
+ItemPointerEquals(const ItemPointerData *pointer1, const ItemPointerData *pointer2)
 {
    if (ItemPointerGetBlockNumber(pointer1) ==
        ItemPointerGetBlockNumber(pointer2) &&
@@ -48,7 +48,7 @@ ItemPointerEquals(ItemPointer pointer1, ItemPointer pointer2)
  *     Generic btree-style comparison for item pointers.
  */
 int32
-ItemPointerCompare(ItemPointer arg1, ItemPointer arg2)
+ItemPointerCompare(const ItemPointerData *arg1, const ItemPointerData *arg2)
 {
    /*
     * Use ItemPointerGet{Offset,Block}NumberNoCheck to avoid asserting
index 2e251fb64ed2a149fc227422207513cd257c866a..a74b3c8e2f431729adb8cdc2225a517dee24b59c 100644 (file)
@@ -217,8 +217,8 @@ ItemPointerSetMovedPartitions(ItemPointerData *pointer)
  * ----------------
  */
 
-extern bool ItemPointerEquals(ItemPointer pointer1, ItemPointer pointer2);
-extern int32 ItemPointerCompare(ItemPointer arg1, ItemPointer arg2);
+extern bool ItemPointerEquals(const ItemPointerData *pointer1, const ItemPointerData *pointer2);
+extern int32 ItemPointerCompare(const ItemPointerData *arg1, const ItemPointerData *arg2);
 extern void ItemPointerInc(ItemPointer pointer);
 extern void ItemPointerDec(ItemPointer pointer);