*/
validate_index(relationId, indexRelationId, snapshot);
- PrintSnapMgrStatus("concurrent index build, before snapshot release");
-
/*
* Drop the reference snapshot. We must do this before waiting out other
* snapshot holders, else we will deadlock against other processes also
limitXmin = snapshot->xmin;
PopActiveSnapshot();
- PrintSnapMgrStatus("concurrent index build, after PopActiveSnapshot");
UnregisterSnapshot(snapshot);
- PrintSnapMgrStatus("concurrent index build, after UnregisterSnapshot");
InvalidateCatalogSnapshot();
- PrintSnapMgrStatus("concurrent index build, after InvalidateCatalogSnapshot");
-
/*
* The index is now valid in the sense that it contains all currently
* interesting tuples. But since it might not contain tuples deleted just
Assert(HistoricSnapshotActive());
return tuplecid_data;
}
-
-void
-PrintSnapMgrStatus(const char *context)
-{
- int asdepth = 0;
- ActiveSnapshotElt *active;
-
- for (active = ActiveSnapshot; active != NULL; active = active->as_next)
- asdepth++;
-
- elog(LOG, "%s: %d reg snaps, %d active snaps, cat snap %p, xmin %u",
- context, RegisteredSnapshots, asdepth,
- CatalogSnapshot, MyPgXact->xmin);
-}