Use more consistent *GetDatum() macros for some unsigned numbers
authorMichael Paquier <michael@paquier.xyz>
Wed, 14 Jan 2026 08:07:49 +0000 (17:07 +0900)
committerMichael Paquier <michael@paquier.xyz>
Wed, 14 Jan 2026 08:07:49 +0000 (17:07 +0900)
This patch switches some code paths to use GetDatum() macros more in
line with the data types of the variables they manipulate.  This set of
changes does not fix a problem, but it is always nice to be more
consistent across the board.

Author: Kirill Reshke <reshkekirill@gmail.com>
Reviewed-by: Roman Khapov <rkhapov@yandex-team.ru>
Reviewed-by: Yuan Li <carol.li2025@outlook.com>
Reviewed-by: Michael Paquier <michael@paquier.xyz>
Reviewed-by: Man Zeng <zengman@halodbtech.com>
Discussion: https://postgr.es/m/CALdSSPidtC7j3MwhkqRj0K2hyp36ztnnjSt6qzGxQtiePR1dzw@mail.gmail.com

contrib/pageinspect/btreefuncs.c
contrib/pageinspect/ginfuncs.c
contrib/pageinspect/gistfuncs.c
contrib/pg_buffercache/pg_buffercache_pages.c
src/backend/access/brin/brin_inclusion.c
src/backend/access/brin/brin_minmax.c
src/backend/access/brin/brin_minmax_multi.c
src/backend/access/gist/gistget.c
src/backend/utils/adt/lockfuncs.c

index 62c905c6e7c2c2ec73642cf97de9014099093a8c..0585b7cee4028ce61ba5326622a110e3d15d06e6 100644 (file)
@@ -507,7 +507,7 @@ bt_page_print_tuples(ua_page_items *uargs)
 
        j = 0;
        memset(nulls, 0, sizeof(nulls));
-       values[j++] = Int16GetDatum(offset);
+       values[j++] = UInt16GetDatum(offset);
        values[j++] = ItemPointerGetDatum(&itup->t_tid);
        values[j++] = Int32GetDatum((int) IndexTupleSize(itup));
        values[j++] = BoolGetDatum(IndexTupleHasNulls(itup));
index ebcc2b3db5c71e8761ec408ad0585ecbe57764d8..b6574083b0a147e2e7cd2b754c0b1186a6a03c16 100644 (file)
@@ -73,7 +73,7 @@ gin_metapage_info(PG_FUNCTION_ARGS)
 
        values[0] = Int64GetDatum(metadata->head);
        values[1] = Int64GetDatum(metadata->tail);
-       values[2] = Int32GetDatum(metadata->tailFreeSize);
+       values[2] = UInt32GetDatum(metadata->tailFreeSize);
        values[3] = Int64GetDatum(metadata->nPendingPages);
        values[4] = Int64GetDatum(metadata->nPendingHeapTuples);
 
index e7759488c36b2e5145591952c0052e43533b23f0..a205cb8a3347b0fecff4295b4381928713dcab6d 100644 (file)
@@ -176,7 +176,7 @@ gist_page_items_bytea(PG_FUNCTION_ARGS)
 
                memset(nulls, 0, sizeof(nulls));
 
-               values[0] = Int16GetDatum(offset);
+               values[0] = UInt16GetDatum(offset);
                values[1] = ItemPointerGetDatum(&itup->t_tid);
                values[2] = Int32GetDatum((int) IndexTupleSize(itup));
 
@@ -283,7 +283,7 @@ gist_page_items(PG_FUNCTION_ARGS)
 
                memset(nulls, 0, sizeof(nulls));
 
-               values[0] = Int16GetDatum(offset);
+               values[0] = UInt16GetDatum(offset);
                values[1] = ItemPointerGetDatum(&itup->t_tid);
                values[2] = Int32GetDatum((int) IndexTupleSize(itup));
                values[3] = BoolGetDatum(ItemIdIsDead(id));
index 0c58e4b265c0caa3b38735669c458cb270c8565f..b682dca658b238516e9a7698bdb9c8d3d37a4997 100644 (file)
@@ -276,7 +276,7 @@ pg_buffercache_pages(PG_FUNCTION_ARGS)
                        nulls[5] = false;
                        values[6] = BoolGetDatum(fctx->record[i].isdirty);
                        nulls[6] = false;
-                       values[7] = Int16GetDatum(fctx->record[i].usagecount);
+                       values[7] = UInt16GetDatum(fctx->record[i].usagecount);
                        nulls[7] = false;
                        /* unused for v1.0 callers, but the array is always long enough */
                        values[8] = Int32GetDatum(fctx->record[i].pinning_backends);
index 08890a3d00952aa9ffc6b300a5f77366f502941f..5a2058d9aad7abdd0796758196abf79ddbe08849 100644 (file)
@@ -641,7 +641,7 @@ inclusion_get_strategy_procinfo(BrinDesc *bdesc, uint16 attno, Oid subtype,
                tuple = SearchSysCache4(AMOPSTRATEGY, ObjectIdGetDatum(opfamily),
                                                                ObjectIdGetDatum(attr->atttypid),
                                                                ObjectIdGetDatum(subtype),
-                                                               Int16GetDatum(strategynum));
+                                                               UInt16GetDatum(strategynum));
 
                if (!HeapTupleIsValid(tuple))
                        elog(ERROR, "missing operator %d(%u,%u) in opfamily %u",
index 9d4e47b4dc08b957c3f3010added407a92854b95..732010293718a2fae82943a2cfeaa22dd9d34149 100644 (file)
@@ -294,7 +294,7 @@ minmax_get_strategy_procinfo(BrinDesc *bdesc, uint16 attno, Oid subtype,
                tuple = SearchSysCache4(AMOPSTRATEGY, ObjectIdGetDatum(opfamily),
                                                                ObjectIdGetDatum(attr->atttypid),
                                                                ObjectIdGetDatum(subtype),
-                                                               Int16GetDatum(strategynum));
+                                                               UInt16GetDatum(strategynum));
 
                if (!HeapTupleIsValid(tuple))
                        elog(ERROR, "missing operator %d(%u,%u) in opfamily %u",
index 75dd8d5083bf96af6d14af5b4b682464a285156f..b58de13478285f1b046cf7e44f8d3316052440b5 100644 (file)
@@ -2932,7 +2932,7 @@ minmax_multi_get_strategy_procinfo(BrinDesc *bdesc, uint16 attno, Oid subtype,
                tuple = SearchSysCache4(AMOPSTRATEGY, ObjectIdGetDatum(opfamily),
                                                                ObjectIdGetDatum(attr->atttypid),
                                                                ObjectIdGetDatum(subtype),
-                                                               Int16GetDatum(strategynum));
+                                                               UInt16GetDatum(strategynum));
                if (!HeapTupleIsValid(tuple))
                        elog(ERROR, "missing operator %d(%u,%u) in opfamily %u",
                                 strategynum, attr->atttypid, subtype, opfamily);
index ca0a397b7c3f176da08209c9bd7fe0d0ff1fc864..11b214eb99bc9d30fba6db1e9c936f6b089c9fc3 100644 (file)
@@ -223,7 +223,7 @@ gistindex_keytest(IndexScanDesc scan,
                                                                         key->sk_collation,
                                                                         PointerGetDatum(&de),
                                                                         key->sk_argument,
-                                                                        Int16GetDatum(key->sk_strategy),
+                                                                        UInt16GetDatum(key->sk_strategy),
                                                                         ObjectIdGetDatum(key->sk_subtype),
                                                                         PointerGetDatum(&recheck));
 
@@ -287,7 +287,7 @@ gistindex_keytest(IndexScanDesc scan,
                                                                         key->sk_collation,
                                                                         PointerGetDatum(&de),
                                                                         key->sk_argument,
-                                                                        Int16GetDatum(key->sk_strategy),
+                                                                        UInt16GetDatum(key->sk_strategy),
                                                                         ObjectIdGetDatum(key->sk_subtype),
                                                                         PointerGetDatum(&recheck));
                        *recheck_distances_p |= recheck;
index bcbc226125c52e264a5baa01af0a3c53a5260dc6..9dadd6da6720d848af0ea63a1e07f47c392f9d0b 100644 (file)
@@ -329,7 +329,7 @@ pg_lock_status(PG_FUNCTION_ARGS)
                                values[1] = ObjectIdGetDatum(instance->locktag.locktag_field1);
                                values[8] = ObjectIdGetDatum(instance->locktag.locktag_field2);
                                values[6] = ObjectIdGetDatum(instance->locktag.locktag_field3);
-                               values[9] = Int16GetDatum(instance->locktag.locktag_field4);
+                               values[9] = UInt16GetDatum(instance->locktag.locktag_field4);
                                nulls[2] = true;
                                nulls[3] = true;
                                nulls[4] = true;
@@ -343,7 +343,7 @@ pg_lock_status(PG_FUNCTION_ARGS)
                                values[1] = ObjectIdGetDatum(instance->locktag.locktag_field1);
                                values[7] = ObjectIdGetDatum(instance->locktag.locktag_field2);
                                values[8] = ObjectIdGetDatum(instance->locktag.locktag_field3);
-                               values[9] = Int16GetDatum(instance->locktag.locktag_field4);
+                               values[9] = UInt16GetDatum(instance->locktag.locktag_field4);
                                nulls[2] = true;
                                nulls[3] = true;
                                nulls[4] = true;