Add opaque declaration of HTAB to tqual.h.
authorKevin Grittner
Sat, 27 Jun 2015 14:55:08 +0000 (09:55 -0500)
committerKevin Grittner
Sat, 27 Jun 2015 14:55:08 +0000 (09:55 -0500)
Commit b89e151054a05f0f6d356ca52e3b725dd0505e53 added the
ResolveCminCmaxDuringDecoding declaration to tqual.h, which uses an
HTAB parameter, without declaring HTAB.  It accidentally fails to
fail to build with current sources because a declaration happens to
be included, directly or indirectly, in all source files that
currently use tqual.h before tqual.h is first included, but we
shouldn't count on that.  Since an opaque declaration is enough
here, just use that, as was done in snapmgr.h.

Backpatch to 9.4, where the HTAB reference was added to tqual.h.

src/include/utils/tqual.h

index 17aad86add6a0f95147a738bc8c138ae94893e9b..e68ef0a4fdb35af274948e434103df2f3a362b9e 100644 (file)
@@ -94,6 +94,7 @@ extern bool HeapTupleHeaderIsOnlyLocked(HeapTupleHeader tuple);
  * To avoid leaking too much knowledge about reorderbuffer implementation
  * details this is implemented in reorderbuffer.c not tqual.c.
  */
+struct HTAB;
 extern bool ResolveCminCmaxDuringDecoding(struct HTAB *tuplecid_data,
                              Snapshot snapshot,
                              HeapTuple htup,