mirror of
https://github.com/postgres/postgres.git
synced 2025-11-29 23:43:17 +03:00
Revert b6002a796
This removes "Add Result Cache executor node". It seems that something weird is going on with the tracking of cache hits and misses as highlighted by many buildfarm animals. It's not yet clear what the problem is as other parts of the plan indicate that the cache did work correctly, it's just the hits and misses that were being reported as 0. This is especially a bad time to have the buildfarm so broken, so reverting before too many more animals go red. Discussion: https://postgr.es/m/CAApHDvq_hydhfovm4=izgWs+C5HqEeRScjMbOgbpC-jRAeK3Yw@mail.gmail.com
This commit is contained in:
@@ -948,33 +948,6 @@ _copyMaterial(const Material *from)
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* _copyResultCache
|
||||
*/
|
||||
static ResultCache *
|
||||
_copyResultCache(const ResultCache *from)
|
||||
{
|
||||
ResultCache *newnode = makeNode(ResultCache);
|
||||
|
||||
/*
|
||||
* copy node superclass fields
|
||||
*/
|
||||
CopyPlanFields((const Plan *) from, (Plan *) newnode);
|
||||
|
||||
/*
|
||||
* copy remainder of node
|
||||
*/
|
||||
COPY_SCALAR_FIELD(numKeys);
|
||||
COPY_POINTER_FIELD(hashOperators, sizeof(Oid) * from->numKeys);
|
||||
COPY_POINTER_FIELD(collations, sizeof(Oid) * from->numKeys);
|
||||
COPY_NODE_FIELD(param_exprs);
|
||||
COPY_SCALAR_FIELD(singlerow);
|
||||
COPY_SCALAR_FIELD(est_entries);
|
||||
|
||||
return newnode;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* CopySortFields
|
||||
*
|
||||
@@ -2367,7 +2340,6 @@ _copyRestrictInfo(const RestrictInfo *from)
|
||||
COPY_SCALAR_FIELD(right_bucketsize);
|
||||
COPY_SCALAR_FIELD(left_mcvfreq);
|
||||
COPY_SCALAR_FIELD(right_mcvfreq);
|
||||
COPY_SCALAR_FIELD(hasheqoperator);
|
||||
|
||||
return newnode;
|
||||
}
|
||||
@@ -5052,9 +5024,6 @@ copyObjectImpl(const void *from)
|
||||
case T_Material:
|
||||
retval = _copyMaterial(from);
|
||||
break;
|
||||
case T_ResultCache:
|
||||
retval = _copyResultCache(from);
|
||||
break;
|
||||
case T_Sort:
|
||||
retval = _copySort(from);
|
||||
break;
|
||||
|
||||
@@ -846,21 +846,6 @@ _outMaterial(StringInfo str, const Material *node)
|
||||
_outPlanInfo(str, (const Plan *) node);
|
||||
}
|
||||
|
||||
static void
|
||||
_outResultCache(StringInfo str, const ResultCache *node)
|
||||
{
|
||||
WRITE_NODE_TYPE("RESULTCACHE");
|
||||
|
||||
_outPlanInfo(str, (const Plan *) node);
|
||||
|
||||
WRITE_INT_FIELD(numKeys);
|
||||
WRITE_OID_ARRAY(hashOperators, node->numKeys);
|
||||
WRITE_OID_ARRAY(collations, node->numKeys);
|
||||
WRITE_NODE_FIELD(param_exprs);
|
||||
WRITE_BOOL_FIELD(singlerow);
|
||||
WRITE_UINT_FIELD(est_entries);
|
||||
}
|
||||
|
||||
static void
|
||||
_outSortInfo(StringInfo str, const Sort *node)
|
||||
{
|
||||
@@ -1935,21 +1920,6 @@ _outMaterialPath(StringInfo str, const MaterialPath *node)
|
||||
WRITE_NODE_FIELD(subpath);
|
||||
}
|
||||
|
||||
static void
|
||||
_outResultCachePath(StringInfo str, const ResultCachePath *node)
|
||||
{
|
||||
WRITE_NODE_TYPE("RESULTCACHEPATH");
|
||||
|
||||
_outPathInfo(str, (const Path *) node);
|
||||
|
||||
WRITE_NODE_FIELD(subpath);
|
||||
WRITE_NODE_FIELD(hash_operators);
|
||||
WRITE_NODE_FIELD(param_exprs);
|
||||
WRITE_BOOL_FIELD(singlerow);
|
||||
WRITE_FLOAT_FIELD(calls, "%.0f");
|
||||
WRITE_UINT_FIELD(est_entries);
|
||||
}
|
||||
|
||||
static void
|
||||
_outUniquePath(StringInfo str, const UniquePath *node)
|
||||
{
|
||||
@@ -2551,7 +2521,6 @@ _outRestrictInfo(StringInfo str, const RestrictInfo *node)
|
||||
WRITE_NODE_FIELD(right_em);
|
||||
WRITE_BOOL_FIELD(outer_is_left);
|
||||
WRITE_OID_FIELD(hashjoinoperator);
|
||||
WRITE_OID_FIELD(hasheqoperator);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -3938,9 +3907,6 @@ outNode(StringInfo str, const void *obj)
|
||||
case T_Material:
|
||||
_outMaterial(str, obj);
|
||||
break;
|
||||
case T_ResultCache:
|
||||
_outResultCache(str, obj);
|
||||
break;
|
||||
case T_Sort:
|
||||
_outSort(str, obj);
|
||||
break;
|
||||
@@ -4175,9 +4141,6 @@ outNode(StringInfo str, const void *obj)
|
||||
case T_MaterialPath:
|
||||
_outMaterialPath(str, obj);
|
||||
break;
|
||||
case T_ResultCachePath:
|
||||
_outResultCachePath(str, obj);
|
||||
break;
|
||||
case T_UniquePath:
|
||||
_outUniquePath(str, obj);
|
||||
break;
|
||||
|
||||
@@ -2211,26 +2211,6 @@ _readMaterial(void)
|
||||
READ_DONE();
|
||||
}
|
||||
|
||||
/*
|
||||
* _readResultCache
|
||||
*/
|
||||
static ResultCache *
|
||||
_readResultCache(void)
|
||||
{
|
||||
READ_LOCALS(ResultCache);
|
||||
|
||||
ReadCommonPlan(&local_node->plan);
|
||||
|
||||
READ_INT_FIELD(numKeys);
|
||||
READ_OID_ARRAY(hashOperators, local_node->numKeys);
|
||||
READ_OID_ARRAY(collations, local_node->numKeys);
|
||||
READ_NODE_FIELD(param_exprs);
|
||||
READ_BOOL_FIELD(singlerow);
|
||||
READ_UINT_FIELD(est_entries);
|
||||
|
||||
READ_DONE();
|
||||
}
|
||||
|
||||
/*
|
||||
* ReadCommonSort
|
||||
* Assign the basic stuff of all nodes that inherit from Sort
|
||||
@@ -2919,8 +2899,6 @@ parseNodeString(void)
|
||||
return_value = _readHashJoin();
|
||||
else if (MATCH("MATERIAL", 8))
|
||||
return_value = _readMaterial();
|
||||
else if (MATCH("RESULTCACHE", 11))
|
||||
return_value = _readResultCache();
|
||||
else if (MATCH("SORT", 4))
|
||||
return_value = _readSort();
|
||||
else if (MATCH("INCREMENTALSORT", 15))
|
||||
|
||||
Reference in New Issue
Block a user