I found a few places in the code where a variable of type Oid is printed using "%d" rather than "%u" and changed them in the attached patch.
In src/backend/replication/logical/reorderbuffer.c, circa line 2494, chunk_seq is of type Oid, but ent->last_chunk_seq is of type int32, leading me to question if perhaps the use of %d for chunk_seq is correct, but the use of Oid for the type of chunk_seq is in error. If neither is in error, perhaps someone can provide a short code comment explaining the logic of the signed/unsigned discrepancy. Thanks, Mark Dilger
diff --git a/src/backend/access/heap/tuptoaster.c b/src/backend/access/heap/tuptoaster.c index ce44bbd..d230387 100644 --- a/src/backend/access/heap/tuptoaster.c +++ b/src/backend/access/heap/tuptoaster.c @@ -2155,7 +2155,7 @@ toast_open_indexes(Relation toastrel, * wrong if there is nothing. */ if (!found) - elog(ERROR, "no valid index found for toast relation with Oid %d", + elog(ERROR, "no valid index found for toast relation with Oid %u", RelationGetRelid(toastrel)); return res; diff --git a/src/backend/postmaster/pgstat.c b/src/backend/postmaster/pgstat.c index c7f41a5..c25ac31 100644 --- a/src/backend/postmaster/pgstat.c +++ b/src/backend/postmaster/pgstat.c @@ -4540,7 +4540,7 @@ pgstat_recv_inquiry(PgStat_MsgInquiry *msg, int len) DBWriteRequest *newreq; PgStat_StatDBEntry *dbentry; - elog(DEBUG2, "received inquiry for %d", msg->databaseid); + elog(DEBUG2, "received inquiry for %u", msg->databaseid); /* * Find the last write request for this DB. If it's older than the @@ -4598,7 +4598,7 @@ pgstat_recv_inquiry(PgStat_MsgInquiry *msg, int len) writetime = pstrdup(timestamptz_to_str(dbentry->stats_timestamp)); mytime = pstrdup(timestamptz_to_str(cur_ts)); elog(LOG, - "stats_timestamp %s is later than collector's time %s for db %d", + "stats_timestamp %s is later than collector's time %s for db %u", writetime, mytime, dbentry->databaseid); pfree(writetime); pfree(mytime); diff --git a/src/backend/replication/logical/reorderbuffer.c b/src/backend/replication/logical/reorderbuffer.c index 6e75398..41a4896 100644 --- a/src/backend/replication/logical/reorderbuffer.c +++ b/src/backend/replication/logical/reorderbuffer.c @@ -2487,11 +2487,11 @@ ReorderBufferToastAppendChunk(ReorderBuffer *rb, ReorderBufferTXN *txn, dlist_init(&ent->chunks); if (chunk_seq != 0) - elog(ERROR, "got sequence entry %d for toast chunk %u instead of seq 0", + elog(ERROR, "got sequence entry %u for toast chunk %u instead of seq 0", chunk_seq, chunk_id); } else if (found && chunk_seq != ent->last_chunk_seq + 1) - elog(ERROR, "got sequence entry %d for toast chunk %u instead of seq %d", + elog(ERROR, "got sequence entry %u for toast chunk %u instead of seq %d", chunk_seq, chunk_id, ent->last_chunk_seq + 1); chunk = DatumGetPointer(fastgetattr(&newtup->tuple, 3, desc, &isnull)); diff --git a/src/bin/pg_dump/parallel.c b/src/bin/pg_dump/parallel.c index 0a9ac02..a59508f 100644 --- a/src/bin/pg_dump/parallel.c +++ b/src/bin/pg_dump/parallel.c @@ -821,7 +821,7 @@ lockTableNoWait(ArchiveHandle *AH, TocEntry *te) " pg_class.relname " " FROM pg_class " " JOIN pg_namespace on pg_namespace.oid = relnamespace " - " WHERE pg_class.oid = %d", te->catalogId.oid); + " WHERE pg_class.oid = %u", te->catalogId.oid); res = PQexec(AH->connection, query->data);
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers