summaryrefslogtreecommitdiff
path: root/src/backend/catalog
diff options
context:
space:
mode:
authorJan Wieck <JanWieck@Yahoo.com>2000-07-05 16:17:43 +0000
committerJan Wieck <JanWieck@Yahoo.com>2000-07-05 16:17:43 +0000
commit6534444d191a56afba36e0e1b58e9d18fc28a578 (patch)
tree66c8e924aeda67beef872bd48b89138e3ce0771d /src/backend/catalog
parent01e1d8fa9a7395f75204834be6a93e56c38bdc1f (diff)
downloadpostgresql-6534444d191a56afba36e0e1b58e9d18fc28a578.tar.gz
Changed TOAST relations to have relkind RELKIND_TOASTVALUE.
Special handling of TOAST relations during VACUUM. TOAST relations are vacuumed while the lock on the master table is still active. The ANALYZE flag doesn't propagate to their vacuuming because the toaster access routines allways use index access ignoring stats, so why compute them at all. Protection of TOAST relations against normal INSERT/UPDATE/DELETE while offering SELECT for debugging purposes. Jan
Diffstat (limited to 'src/backend/catalog')
-rw-r--r--src/backend/catalog/index.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/backend/catalog/index.c b/src/backend/catalog/index.c
index a78f0fa3db..bedb84e6d2 100644
--- a/src/backend/catalog/index.c
+++ b/src/backend/catalog/index.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.122 2000/07/04 06:11:23 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.123 2000/07/05 16:17:37 wieck Exp $
*
*
* INTERFACE ROUTINES
@@ -1335,7 +1335,8 @@ IndexesAreActive(Oid relid, bool confirmCommitted)
if (!LockClassinfoForUpdate(relid, &tuple, &buffer, confirmCommitted))
elog(ERROR, "IndexesAreActive couldn't lock %u", relid);
- if (((Form_pg_class) GETSTRUCT(&tuple))->relkind != RELKIND_RELATION)
+ if (((Form_pg_class) GETSTRUCT(&tuple))->relkind != RELKIND_RELATION &&
+ ((Form_pg_class) GETSTRUCT(&tuple))->relkind != RELKIND_TOASTVALUE)
elog(ERROR, "relation %u isn't an relation", relid);
isactive = ((Form_pg_class) GETSTRUCT(&tuple))->relhasindex;
ReleaseBuffer(buffer);