mirror of
https://github.com/postgres/postgres.git
synced 2026-04-15 22:10:45 -04:00
The data types that contrib/pageinspect's bt_metap() function were
declared to return as OUT arguments were wrong in some cases. In
particular, the oldest_xact column (a TransactionId/xid field) was
declared integer/int4 within the pageinspect extension's sql file. This
led to errors when an oldest_xact value that exceeded 2^31-1 was
encountered.
We cannot fix the declaration on Postgres 11 or 12. All we can do is
ameliorate the problem. Use "%d" instead of "%u" to format the output
of the oldest_xact value. This makes the C code match the declaration,
suppressing unhelpful error messages that might otherwise make
bt_metap() totally unusable. A bogus negative oldest_xact value will be
displayed instead of raising an error.
This commit addresses the same issue as master branch commit
|
||
|---|---|---|
| .. | ||
| expected | ||
| sql | ||
| .gitignore | ||
| brinfuncs.c | ||
| btreefuncs.c | ||
| fsmfuncs.c | ||
| ginfuncs.c | ||
| hashfuncs.c | ||
| heapfuncs.c | ||
| Makefile | ||
| pageinspect--1.0--1.1.sql | ||
| pageinspect--1.1--1.2.sql | ||
| pageinspect--1.2--1.3.sql | ||
| pageinspect--1.3--1.4.sql | ||
| pageinspect--1.4--1.5.sql | ||
| pageinspect--1.5--1.6.sql | ||
| pageinspect--1.5.sql | ||
| pageinspect--1.6--1.7.sql | ||
| pageinspect--unpackaged--1.0.sql | ||
| pageinspect.control | ||
| pageinspect.h | ||
| rawpage.c | ||