22 #include "utils/fmgroids.h" 66 elog(
ERROR,
"cache lookup failed for relation %u", relationId);
69 if (classForm->relhasrules != relHasRules)
72 classForm->relhasrules = relHasRules;
108 (
errcode(ERRCODE_UNDEFINED_OBJECT),
109 errmsg(
"rule \"%s\" for relation \"%s\" does not exist",
113 Assert(relid == ruleform->ev_class);
114 ruleoid = ruleform->oid;
bool IsDefinedRewriteRule(Oid owningRel, const char *ruleName)
void table_close(Relation relation, LOCKMODE lockmode)
#define PointerGetDatum(X)
int errcode(int sqlerrcode)
void heap_freetuple(HeapTuple htup)
void SetRelationRuleStatus(Oid relationId, bool relHasRules)
#define ObjectIdGetDatum(X)
#define ereport(elevel, rest)
void ReleaseSysCache(HeapTuple tuple)
#define HeapTupleIsValid(tuple)
#define Assert(condition)
void CatalogTupleUpdate(Relation heapRel, ItemPointer otid, HeapTuple tup)
HeapTuple SearchSysCache2(int cacheId, Datum key1, Datum key2)
#define SearchSysCacheExists2(cacheId, key1, key2)
FormData_pg_rewrite * Form_pg_rewrite
Oid get_rewrite_oid(Oid relid, const char *rulename, bool missing_ok)
FormData_pg_class * Form_pg_class
#define SearchSysCacheCopy1(cacheId, key1)
int errmsg(const char *fmt,...)
void CacheInvalidateRelcacheByTuple(HeapTuple classTuple)
Relation table_open(Oid relationId, LOCKMODE lockmode)
char * get_rel_name(Oid relid)