diff options
author | Jan Wieck <JanWieck@Yahoo.com> | 2000-07-21 10:31:31 +0000 |
---|---|---|
committer | Jan Wieck <JanWieck@Yahoo.com> | 2000-07-21 10:31:31 +0000 |
commit | 82f3945a671aca50f63e87f7395d5948a2489e7b (patch) | |
tree | 300d84aab8fbb651b1c85245faf4e5269322a923 /src/include/access | |
parent | 9e85183bfc31c05bec81585ee43a27b6402a5c02 (diff) |
Temporary fix to make TOAST vacuum-safe. All values are forced to be
in memory (plain or compressed) in the tuple returned from the heap-am.
So no index will ever contain an external reference.
Jan
Diffstat (limited to 'src/include/access')
-rw-r--r-- | src/include/access/tuptoaster.h | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/include/access/tuptoaster.h b/src/include/access/tuptoaster.h index da38f65385c..a84df07c686 100644 --- a/src/include/access/tuptoaster.h +++ b/src/include/access/tuptoaster.h @@ -6,7 +6,7 @@ * * Copyright (c) 2000, PostgreSQL Development Team * - * $Id: tuptoaster.h,v 1.5 2000/07/04 06:11:50 tgl Exp $ + * $Id: tuptoaster.h,v 1.6 2000/07/21 10:31:31 wieck Exp $ * *------------------------------------------------------------------------- */ @@ -20,6 +20,14 @@ #include "access/tupmacs.h" #include "utils/rel.h" +/* + * DO NOT ENABLE THIS + * until we have crash safe file versioning and you've + * changed VACUUM to recreate indices that use possibly + * toasted values. 2000/07/20 Jan + */ +#undef TOAST_INDICES + #define TOAST_MAX_CHUNK_SIZE ((MaxTupleSize - \ MAXALIGN( \ @@ -29,8 +37,14 @@ MAXALIGN(VARHDRSZ))) / 4) +#ifdef TOAST_INDICES extern void heap_tuple_toast_attrs(Relation rel, HeapTuple newtup, HeapTuple oldtup); +#else +extern void heap_tuple_toast_attrs(Relation rel, + HeapTuple newtup, HeapTuple oldtup, + HeapTupleHeader *plaintdata, int32 *plaintlen); +#endif extern varattrib *heap_tuple_untoast_attr(varattrib * attr); |