]> granicus.if.org Git - postgresql/blobdiff - src/include/utils/inval.h
Update copyright for 2016
[postgresql] / src / include / utils / inval.h
index e7052726f27c9772b5f714b5fe429bc525329e13..122fef29c8374d431365f3a4f78de9d7fba60b05 100644 (file)
@@ -4,10 +4,10 @@
  *       POSTGRES cache invalidation dispatcher definitions.
  *
  *
- * Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
+ * Portions Copyright (c) 1996-2016, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $PostgreSQL: pgsql/src/include/utils/inval.h,v 1.30 2004/02/10 01:55:26 tgl Exp $
+ * src/include/utils/inval.h
  *
  *-------------------------------------------------------------------------
  */
 #define INVAL_H
 
 #include "access/htup.h"
+#include "storage/relfilenode.h"
+#include "utils/relcache.h"
 
 
-typedef void (*CacheCallbackFunction) (Datum arg, Oid relid);
+typedef void (*SyscacheCallbackFunction) (Datum arg, int cacheid, uint32 hashvalue);
+typedef void (*RelcacheCallbackFunction) (Datum arg, Oid relid);
 
 
 extern void AcceptInvalidationMessages(void);
 
-extern void AtEOXactInvalidationMessages(bool isCommit);
+extern void AtEOXact_Inval(bool isCommit);
 
-extern void CommandEndInvalidationMessages(bool isCommit);
+extern void AtEOSubXact_Inval(bool isCommit);
 
-extern void CacheInvalidateHeapTuple(Relation relation, HeapTuple tuple);
+extern void AtPrepare_Inval(void);
+
+extern void PostPrepare_Inval(void);
+
+extern void CommandEndInvalidationMessages(void);
+
+extern void CacheInvalidateHeapTuple(Relation relation,
+                                                HeapTuple tuple,
+                                                HeapTuple newtuple);
+
+extern void CacheInvalidateCatalog(Oid catalogId);
 
 extern void CacheInvalidateRelcache(Relation relation);
 
 extern void CacheInvalidateRelcacheByTuple(HeapTuple classTuple);
 
+extern void CacheInvalidateRelcacheByRelid(Oid relid);
+
+extern void CacheInvalidateSmgr(RelFileNodeBackend rnode);
+
+extern void CacheInvalidateRelmap(Oid databaseId);
+
 extern void CacheRegisterSyscacheCallback(int cacheid,
-                                                         CacheCallbackFunction func,
+                                                         SyscacheCallbackFunction func,
                                                          Datum arg);
 
-extern void CacheRegisterRelcacheCallback(CacheCallbackFunction func,
+extern void CacheRegisterRelcacheCallback(RelcacheCallbackFunction func,
                                                          Datum arg);
 
+extern void CallSyscacheCallbacks(int cacheid, uint32 hashvalue);
+
+extern void InvalidateSystemCaches(void);
 #endif   /* INVAL_H */