pending_changes_against_18beta1.patch
text/x-patch
Filename: pending_changes_against_18beta1.patch
Type: text/x-patch
Part: 2
Patch
Format: unified
| File | + | − |
|---|---|---|
| code/dbmirror/pending.c | 15 | 8 |
diff --git a/code/dbmirror/pending.c b/code/dbmirror/pending.c
index fca76318..b1c61e02 100644
--- a/code/dbmirror/pending.c
+++ b/code/dbmirror/pending.c
@@ -98,7 +98,7 @@ char *get_namespace_name(Oid nspid);
#define BUFFER_SIZE 256
#define MAX_OID_LEN 10
-//#define DEBUG_OUTPUT 1
+#define DEBUG_OUTPUT 1
extern Datum recordchange(PG_FUNCTION_ARGS);
PG_FUNCTION_INFO_V1(recordchange);
@@ -399,7 +399,8 @@ getPrimaryKey(Oid tblOid)
return NULL;
}
- tpResultKey = (int2vector *) DatumGetPointer(PG_DETOAST_DATUM(resDatum));
+ //tpResultKey = (int2vector *) DatumGetPointer(PG_DETOAST_DATUM(resDatum));
+ tpResultKey = (int2vector *) PG_DETOAST_DATUM(resDatum);
int n=tpResultKey->dim1;
resultKey = palloc(Int2VectorSize(n));
if (n > 0)
@@ -548,7 +549,8 @@ packageData(char *cpTableName,HeapTuple tTupleData, TupleDesc tTupleDesc, Oid ta
} /* KeyUsage!=ALL */
#ifndef NODROPCOLUMN
// this comment is for 11
- if(tTupleDesc->attrs[iColumnCounter-1].attisdropped)
+ ////if(tTupleDesc->attrs[iColumnCounter-1].attisdropped)
+ if (TupleDescAttr(tTupleDesc,iColumnCounter-1)->attisdropped)
//if(tTupleDesc->attrs[iColumnCounter-1]->attisdropped)
{
/**
@@ -568,7 +570,8 @@ eksairetea columns
}
// this comment is for 11
- cpFieldName = DatumGetPointer(NameGetDatum(&tTupleDesc->attrs[iColumnCounter - 1].attname));
+ ////cpFieldName = DatumGetPointer(NameGetDatum(&tTupleDesc->attrs[iColumnCounter - 1].attname));
+ cpFieldName = NameStr(TupleDescAttr(tTupleDesc,iColumnCounter - 1)->attname );
//cpFieldName = DatumGetPointer(NameGetDatum(&tTupleDesc->attrs[iColumnCounter - 1]->attname));
#if defined DEBUG_OUTPUT
elog(NOTICE, "FieldName: %s", cpFieldName);
@@ -1441,7 +1444,8 @@ int handleParents(char *cpTableName,HeapTuple Btuple,HeapTuple Atuple, TupleDesc
confrelid = (Oid) DatumGetObjectId(resDatum);
resDatum = SPI_getbinval(resTuple,FK_tupTable->tupdesc,2,&isNull);
- arr = (ArrayType *) DatumGetPointer(PG_DETOAST_DATUM(resDatum));
+ //arr = (ArrayType *) DatumGetPointer(PG_DETOAST_DATUM(resDatum));
+ arr = (ArrayType *) PG_DETOAST_DATUM(resDatum);
thisCols = (int16 *)ARR_DATA_PTR(arr);
numOfCols=ARR_DIMS(arr)[0];
#if defined DEBUG_OUTPUT
@@ -1506,7 +1510,8 @@ int handleParents(char *cpTableName,HeapTuple Btuple,HeapTuple Atuple, TupleDesc
#endif
if (FkHasNullValueORXcluded || !handleit) continue;
resDatum = SPI_getbinval(resTuple,FK_tupTable->tupdesc,3,&isNull);
- arr = (ArrayType *) DatumGetPointer(PG_DETOAST_DATUM(resDatum));
+ //arr = (ArrayType *) DatumGetPointer(PG_DETOAST_DATUM(resDatum));
+ arr = (ArrayType *) PG_DETOAST_DATUM(resDatum);
fkCols = (int16 *)ARR_DATA_PTR(arr);
for (run=fkCols,colrun=0;colrun<numOfCols;run++,colrun++) {
SPITupleTable *PAR_tupTable;
@@ -1822,7 +1827,8 @@ int updateAccntParents(char *cpTableName,HeapTuple Btuple,HeapTuple Atuple, Tupl
confrelid = (Oid) DatumGetObjectId(resDatum);
resDatum = SPI_getbinval(resTuple,FK_tupTable->tupdesc,2,&isNull);
- arr = (ArrayType *) DatumGetPointer(PG_DETOAST_DATUM(resDatum));
+ //arr = (ArrayType *) DatumGetPointer(PG_DETOAST_DATUM(resDatum));
+ arr = (ArrayType *) PG_DETOAST_DATUM(resDatum);
thisCols = (int16 *)ARR_DATA_PTR(arr);
numOfCols=ARR_DIMS(arr)[0];
for (run=thisCols,colrun=0;colrun<numOfCols;run++,colrun++) {
@@ -1888,7 +1894,8 @@ int updateAccntParents(char *cpTableName,HeapTuple Btuple,HeapTuple Atuple, Tupl
resDatum = SPI_getbinval(resTuple,FK_tupTable->tupdesc,3,&isNull);
- arr = (ArrayType *) DatumGetPointer(PG_DETOAST_DATUM(resDatum));
+ //arr = (ArrayType *) DatumGetPointer(PG_DETOAST_DATUM(resDatum));
+ arr = (ArrayType *) PG_DETOAST_DATUM(resDatum);
fkCols = (int16 *)ARR_DATA_PTR(arr);
for (run=fkCols,colrun=0;colrun<numOfCols;run++,colrun++) {
SPITupleTable *PAR_tupTable;