Eneboo - Documentación para desarrolladores
|
00001 /*------------------------------------------------------------------------- 00002 * 00003 * inval.h 00004 * POSTGRES cache invalidation dispatcher definitions. 00005 * 00006 * 00007 * Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group 00008 * Portions Copyright (c) 1994, Regents of the University of California 00009 * 00010 * $PostgreSQL: pgsql/src/include/utils/inval.h,v 1.37 2005/10/15 02:49:46 momjian Exp $ 00011 * 00012 *------------------------------------------------------------------------- 00013 */ 00014 #ifndef INVAL_H 00015 #define INVAL_H 00016 00017 #include "access/htup.h" 00018 00019 00020 typedef void (*CacheCallbackFunction) (Datum arg, Oid relid); 00021 00022 00023 extern void AcceptInvalidationMessages(void); 00024 00025 extern void AtStart_Inval(void); 00026 00027 extern void AtSubStart_Inval(void); 00028 00029 extern void AtEOXact_Inval(bool isCommit); 00030 00031 extern void AtEOSubXact_Inval(bool isCommit); 00032 00033 extern void AtPrepare_Inval(void); 00034 00035 extern void PostPrepare_Inval(void); 00036 00037 extern void CommandEndInvalidationMessages(void); 00038 00039 extern void CacheInvalidateHeapTuple(Relation relation, HeapTuple tuple); 00040 00041 extern void CacheInvalidateRelcache(Relation relation); 00042 00043 extern void CacheInvalidateRelcacheByTuple(HeapTuple classTuple); 00044 00045 extern void CacheInvalidateRelcacheByRelid(Oid relid); 00046 00047 extern void CacheRegisterSyscacheCallback(int cacheid, 00048 CacheCallbackFunction func, 00049 Datum arg); 00050 00051 extern void CacheRegisterRelcacheCallback(CacheCallbackFunction func, 00052 Datum arg); 00053 00054 extern void inval_twophase_postcommit(TransactionId xid, uint16 info, 00055 void *recdata, uint32 len); 00056 00057 #endif /* INVAL_H */