+                               diff = (int32) (vacrel->NewRelfrozenXid - 
vacrel->relfrozenxid);
+                               Assert(diff > 0);

Did you see that this crashed on windows cfbot?

https://api.cirrus-ci.com/v1/artifact/task/4592929254670336/log/tmp_check/postmaster.log
TRAP: FailedAssertion("diff > 0", File: 
"c:\cirrus\src\backend\access\heap\vacuumlazy.c", Line: 724, PID: 5984)
abort() has been called2022-03-30 03:48:30.267 GMT [5316][client backend] 
[pg_regress/tablefunc][3/15389:0] ERROR:  infinite recursion detected
2022-03-30 03:48:38.031 GMT [5592][postmaster] LOG:  server process (PID 5984) 
was terminated by exception 0xC0000354
2022-03-30 03:48:38.031 GMT [5592][postmaster] DETAIL:  Failed process was 
running: autovacuum: VACUUM ANALYZE pg_catalog.pg_database
2022-03-30 03:48:38.031 GMT [5592][postmaster] HINT:  See C include file 
"ntstatus.h" for a description of the hexadecimal value.

https://cirrus-ci.com/task/4592929254670336

00000000`007ff130 00000001`400b4ef8     postgres!ExceptionalCondition(
                        char * conditionName = 0x00000001`40a915d8 "diff > 0", 
                        char * errorType = 0x00000001`40a915c8 
"FailedAssertion", 
                        char * fileName = 0x00000001`40a91598 
"c:\cirrus\src\backend\access\heap\vacuumlazy.c", 
                        int lineNumber = 0n724)+0x8d 
[c:\cirrus\src\backend\utils\error\assert.c @ 70]
00000000`007ff170 00000001`402a0914     postgres!heap_vacuum_rel(
                        struct RelationData * rel = 0x00000000`00a51088, 
                        struct VacuumParams * params = 0x00000000`00a8420c, 
                        struct BufferAccessStrategyData * bstrategy = 
0x00000000`00a842a0)+0x1038 [c:\cirrus\src\backend\access\heap\vacuumlazy.c @ 
724]
00000000`007ff350 00000001`402a4686     postgres!table_relation_vacuum(
                        struct RelationData * rel = 0x00000000`00a51088, 
                        struct VacuumParams * params = 0x00000000`00a8420c, 
                        struct BufferAccessStrategyData * bstrategy = 
0x00000000`00a842a0)+0x34 [c:\cirrus\src\include\access\tableam.h @ 1681]
00000000`007ff380 00000001`402a1a2d     postgres!vacuum_rel(
                        unsigned int relid = 0x4ee, 
                        struct RangeVar * relation = 0x00000000`01799ae0, 
                        struct VacuumParams * params = 
0x00000000`00a8420c)+0x5a6 [c:\cirrus\src\backend\commands\vacuum.c @ 2068]
00000000`007ff400 00000001`4050f1ef     postgres!vacuum(
                        struct List * relations = 0x00000000`0179df58, 
                        struct VacuumParams * params = 0x00000000`00a8420c, 
                        struct BufferAccessStrategyData * bstrategy = 
0x00000000`00a842a0, 
                        bool isTopLevel = true)+0x69d 
[c:\cirrus\src\backend\commands\vacuum.c @ 482]
00000000`007ff5f0 00000001`4050dc95     postgres!autovacuum_do_vac_analyze(
                        struct autovac_table * tab = 0x00000000`00a84208, 
                        struct BufferAccessStrategyData * bstrategy = 
0x00000000`00a842a0)+0x8f [c:\cirrus\src\backend\postmaster\autovacuum.c @ 3248]
00000000`007ff640 00000001`4050b4e3     postgres!do_autovacuum(void)+0xef5 
[c:\cirrus\src\backend\postmaster\autovacuum.c @ 2503]

It seems like there should be even more logs, especially since it says:
[03:48:43.119] Uploading 3 artifacts for c:\cirrus\**\*.diffs
[03:48:43.122] Uploaded c:\cirrus\contrib\tsm_system_rows\regression.diffs
[03:48:43.125] Uploaded c:\cirrus\contrib\tsm_system_time\regression.diffs


Reply via email to