1 /*-------------------------------------------------------------------------
4 * POSTGRES cache invalidation dispatcher definitions.
7 * Copyright (c) 1994, Regents of the University of California
9 * $Id: inval.h,v 1.5 1997/09/07 05:02:36 momjian Exp $
11 *-------------------------------------------------------------------------
16 #include <access/htup.h>
17 #include <utils/rel.h>
19 extern void DiscardInvalid(void);
21 extern void RegisterInvalid(bool send);
23 extern void SetRefreshWhenInvalidate(bool on);
25 extern void RelationInvalidateHeapTuple(Relation relation, HeapTuple tuple);
28 * POSTGRES local cache invalidation definitions. (originates from linval.h)
30 typedef struct InvalidationUserData
32 struct InvalidationUserData *dataP[1]; /* VARIABLE LENGTH */
33 } InvalidationUserData; /* VARIABLE LENGTH STRUCTURE */
35 typedef struct InvalidationEntryData
37 InvalidationUserData *nextP;
38 InvalidationUserData userData; /* VARIABLE LENGTH ARRAY */
39 } InvalidationEntryData; /* VARIABLE LENGTH STRUCTURE */
41 typedef Pointer InvalidationEntry;
43 typedef InvalidationEntry LocalInvalid;
45 #define EmptyLocalInvalid NULL