mirror of
https://github.com/postgres/postgres.git
synced 2025-09-02 04:21:28 +03:00
Convert gist to compute page level xid horizon on primary.
Due to parallel development, gist added the missing conflict information inc952eae52a
, while558a9165e0
moved that computation to the primary for the index types that already had it. Thus adapt gist to also compute on the primary, using index_compute_xid_horizon_for_tuples() instead of its own copy of the logic. This also adds pg_waldump support for XLOG_GIST_DELETE records, which previously was not properly present. Bumps WAL version. Author: Andres Freund Discussion: https://postgr.es/m/20190406050243.bszosdg4buvabfrt@alap3.anarazel.de
This commit is contained in:
@@ -33,8 +33,11 @@ out_gistxlogPageReuse(StringInfo buf, gistxlogPageReuse *xlrec)
|
||||
}
|
||||
|
||||
static void
|
||||
out_gistxlogDelete(StringInfo buf, gistxlogPageUpdate *xlrec)
|
||||
out_gistxlogDelete(StringInfo buf, gistxlogDelete *xlrec)
|
||||
{
|
||||
appendStringInfo(buf, "delete: latestRemovedXid %u, nitems: %u",
|
||||
xlrec->latestRemovedXid, xlrec->ntodelete);
|
||||
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -66,7 +69,7 @@ gist_desc(StringInfo buf, XLogReaderState *record)
|
||||
out_gistxlogPageReuse(buf, (gistxlogPageReuse *) rec);
|
||||
break;
|
||||
case XLOG_GIST_DELETE:
|
||||
out_gistxlogDelete(buf, (gistxlogPageUpdate *) rec);
|
||||
out_gistxlogDelete(buf, (gistxlogDelete *) rec);
|
||||
break;
|
||||
case XLOG_GIST_PAGE_SPLIT:
|
||||
out_gistxlogPageSplit(buf, (gistxlogPageSplit *) rec);
|
||||
|
Reference in New Issue
Block a user