Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 7f98b9d

Browse files
committed
remove fastupdate remains and rename orderByColuns to AttacnColumn for clarity
1 parent 9ac931a commit 7f98b9d

File tree

6 files changed

+24
-31
lines changed

6 files changed

+24
-31
lines changed

src/rum.h

+2-8
Original file line numberDiff line numberDiff line change
@@ -315,18 +315,12 @@ typedef struct
315315
typedef struct RumOptions
316316
{
317317
int32 vl_len_; /* varlena header (do not touch directly!) */
318-
bool useFastUpdate; /* use fast updates? */
319318
bool useAlternativeOrder;
320-
int orderByColumn;
319+
int attachColumn;
321320
int addToColumn;
322321
} RumOptions;
323322

324323
#define ALT_ADD_INFO_NULL_FLAG (0x8000)
325-
#define RUM_DEFAULT_USE_FASTUPDATE false
326-
#define RumGetUseFastUpdate(relation) \
327-
((relation)->rd_options ? \
328-
((RumOptions *) (relation)->rd_options)->useFastUpdate : RUM_DEFAULT_USE_FASTUPDATE)
329-
330324

331325
/* Macros for buffer lock/unlock operations */
332326
#define RUM_UNLOCK BUFFER_LOCK_UNLOCK
@@ -353,7 +347,7 @@ typedef struct RumState
353347
bool isBuild;
354348
bool oneCol; /* true if single-column index */
355349
bool useAlternativeOrder;
356-
AttrNumber attrnOrderByColumn;
350+
AttrNumber attrnAttachColumn;
357351
AttrNumber attrnAddToColumn;
358352

359353
/*

src/rumdatapage.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -333,7 +333,7 @@ compareRumKey(RumState * state, const AttrNumber attno,
333333
if (a->addInfoIsNull == false && b->addInfoIsNull == false)
334334
{
335335
int res;
336-
AttrNumber attnum = state->attrnOrderByColumn;
336+
AttrNumber attnum = state->attrnAttachColumn;
337337

338338
res = DatumGetInt32(FunctionCall2Coll(
339339
&state->compareFn[attnum - 1],

src/rumget.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -262,7 +262,7 @@ collectMatchBitmap(RumBtreeData * btree, RumBtreeStack * stack,
262262
if (rumstate->useAlternativeOrder &&
263263
scanEntry->attnumOrig == rumstate->attrnAddToColumn)
264264
{
265-
cmp = &rumstate->compareFn[rumstate->attrnOrderByColumn - 1];
265+
cmp = &rumstate->compareFn[rumstate->attrnAttachColumn - 1];
266266
}
267267

268268
/* Initialize */
@@ -2090,7 +2090,7 @@ keyGetOrdering(RumState * rumstate, MemoryContext tempCtx, RumScanKey key,
20902090
return get_float8_infinity();
20912091

20922092
return DatumGetFloat8(FunctionCall3(
2093-
&rumstate->outerOrderingFn[rumstate->attrnOrderByColumn - 1],
2093+
&rumstate->outerOrderingFn[rumstate->attrnAttachColumn - 1],
20942094
key->outerAddInfo,
20952095
key->queryValues[0],
20962096
UInt16GetDatum(key->strategy)

src/ruminsert.c

+6-6
Original file line numberDiff line numberDiff line change
@@ -538,10 +538,10 @@ rumBuildCallback(Relation index, HeapTuple htup, Datum *values,
538538
Datum outerAddInfo = (Datum) 0;
539539
bool outerAddInfoIsNull = true;
540540

541-
if (AttributeNumberIsValid(buildstate->rumstate.attrnOrderByColumn))
541+
if (AttributeNumberIsValid(buildstate->rumstate.attrnAttachColumn))
542542
{
543-
outerAddInfo = values[buildstate->rumstate.attrnOrderByColumn - 1];
544-
outerAddInfoIsNull = isnull[buildstate->rumstate.attrnOrderByColumn - 1];
543+
outerAddInfo = values[buildstate->rumstate.attrnAttachColumn - 1];
544+
outerAddInfoIsNull = isnull[buildstate->rumstate.attrnAttachColumn - 1];
545545
}
546546

547547
oldCtx = MemoryContextSwitchTo(buildstate->tmpCtx);
@@ -810,10 +810,10 @@ ruminsert(Relation index, Datum *values, bool *isnull,
810810

811811
initRumState(&rumstate, index);
812812

813-
if (AttributeNumberIsValid(rumstate.attrnOrderByColumn))
813+
if (AttributeNumberIsValid(rumstate.attrnAttachColumn))
814814
{
815-
outerAddInfo = values[rumstate.attrnOrderByColumn - 1];
816-
outerAddInfoIsNull = isnull[rumstate.attrnOrderByColumn - 1];
815+
outerAddInfo = values[rumstate.attrnAttachColumn - 1];
816+
outerAddInfoIsNull = isnull[rumstate.attrnAttachColumn - 1];
817817
}
818818

819819
for (i = 0; i < rumstate.origTupdesc->natts; i++)

src/rumscan.c

+4-4
Original file line numberDiff line numberDiff line change
@@ -164,13 +164,13 @@ rumFillScanKey(RumScanOpaque so, OffsetNumber attnum,
164164
key->addInfoKeys = NULL;
165165
key->addInfoNKeys = 0;
166166

167-
if (key->orderBy && key->attnum == rumstate->attrnOrderByColumn)
167+
if (key->orderBy && key->attnum == rumstate->attrnAttachColumn)
168168
{
169169
if (nQueryValues != 1)
170170
elog(ERROR, "extractQuery should return only one value for ordering");
171171
if (rumstate->canOuterOrdering[attnum - 1] == false)
172172
elog(ERROR, "doesn't support ordering as additional info");
173-
if (rumstate->origTupdesc->attrs[rumstate->attrnOrderByColumn - 1]->attbyval == false)
173+
if (rumstate->origTupdesc->attrs[rumstate->attrnAttachColumn - 1]->attbyval == false)
174174
elog(ERROR, "doesn't support order by over pass-by-reference column");
175175

176176
key->useAddToColumn = true;
@@ -592,7 +592,7 @@ rumNewScanKey(IndexScanDesc scan)
592592
{
593593
if (key->attnumOrig == so->rumstate.attrnAddToColumn)
594594
hasAddOnFilter |= haofHasAddToRestriction;
595-
if (key->attnumOrig == so->rumstate.attrnOrderByColumn)
595+
if (key->attnumOrig == so->rumstate.attrnAttachColumn)
596596
hasAddOnFilter |= haofHasAddOnRestriction;
597597
}
598598

@@ -612,7 +612,7 @@ rumNewScanKey(IndexScanDesc scan)
612612
RumScanKey key = so->keys[i];
613613

614614
if (key->orderBy == false &&
615-
key->attnumOrig == so->rumstate.attrnOrderByColumn)
615+
key->attnumOrig == so->rumstate.attrnAttachColumn)
616616
{
617617
for(j=0; addToKey == NULL && j<so->nkeys; j++)
618618
if (so->keys[j]->orderBy == false &&

src/rumutil.c

+9-10
Original file line numberDiff line numberDiff line change
@@ -124,25 +124,25 @@ initRumState(RumState * state, Relation index)
124124
state->oneCol = (origTupdesc->natts == 1) ? true : false;
125125
state->origTupdesc = origTupdesc;
126126

127-
state->attrnOrderByColumn = InvalidAttrNumber;
127+
state->attrnAttachColumn = InvalidAttrNumber;
128128
state->attrnAddToColumn = InvalidAttrNumber;
129129
if (index->rd_options)
130130
{
131131
RumOptions *options = (RumOptions *) index->rd_options;
132132

133-
if (options->orderByColumn > 0)
133+
if (options->attachColumn > 0)
134134
{
135-
char *colname = (char *) options + options->orderByColumn;
135+
char *colname = (char *) options + options->attachColumn;
136136
AttrNumber attrnOrderByHeapColumn;
137137

138138
attrnOrderByHeapColumn = get_attnum(index->rd_index->indrelid, colname);
139139

140140
if (!AttributeNumberIsValid(attrnOrderByHeapColumn))
141141
elog(ERROR, "attribute \"%s\" is not found in table", colname);
142142

143-
state->attrnOrderByColumn = get_attnum(index->rd_id, colname);
143+
state->attrnAttachColumn = get_attnum(index->rd_id, colname);
144144

145-
if (!AttributeNumberIsValid(state->attrnOrderByColumn))
145+
if (!AttributeNumberIsValid(state->attrnAttachColumn))
146146
elog(ERROR, "attribute \"%s\" is not found in index", colname);
147147
}
148148

@@ -162,13 +162,13 @@ initRumState(RumState * state, Relation index)
162162
elog(ERROR, "attribute \"%s\" is not found in index", colname);
163163
}
164164

165-
if (!(AttributeNumberIsValid(state->attrnOrderByColumn) &&
165+
if (!(AttributeNumberIsValid(state->attrnAttachColumn) &&
166166
AttributeNumberIsValid(state->attrnAddToColumn)))
167167
elog(ERROR, "AddTo and OrderBy columns should be defined both");
168168

169169
if (options->useAlternativeOrder)
170170
{
171-
if (!(AttributeNumberIsValid(state->attrnOrderByColumn) &&
171+
if (!(AttributeNumberIsValid(state->attrnAttachColumn) &&
172172
AttributeNumberIsValid(state->attrnAddToColumn)))
173173
elog(ERROR, "to use alternative ordering AddTo and OrderBy should be defined");
174174

@@ -197,7 +197,7 @@ initRumState(RumState * state, Relation index)
197197
elog(ERROR, "AddTo could should not have AddInfo");
198198

199199
rumConfig->addInfoTypeOid = origTupdesc->attrs[
200-
state->attrnOrderByColumn - 1]->atttypid;
200+
state->attrnAttachColumn - 1]->atttypid;
201201
}
202202

203203
if (state->oneCol)
@@ -797,8 +797,7 @@ rumoptions(Datum reloptions, bool validate)
797797
RumOptions *rdopts;
798798
int numoptions;
799799
static const relopt_parse_elt tab[] = {
800-
{"fastupdate", RELOPT_TYPE_BOOL, offsetof(RumOptions, useFastUpdate)},
801-
{"attach", RELOPT_TYPE_STRING, offsetof(RumOptions, orderByColumn)},
800+
{"attach", RELOPT_TYPE_STRING, offsetof(RumOptions, attachColumn)},
802801
{"to", RELOPT_TYPE_STRING, offsetof(RumOptions, addToColumn)},
803802
{"order_by_attach", RELOPT_TYPE_BOOL, offsetof(RumOptions, useAlternativeOrder)}
804803
};

0 commit comments

Comments
 (0)