mirror of https://github.com/citusdata/citus.git
IsReferenceTable, ShardIntervalCount: remove misleading isCitusTable check
GetCitusTableCacheEntry raises an error if relationId is not distributedpull/3903/head
parent
f344c1a4bc
commit
8faaaee6a5
|
@ -489,21 +489,14 @@ LoadShardIntervalList(Oid relationId)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* ShardIntervalCount returns number of shard intervals for a given distributed table.
|
* ShardIntervalCount returns number of shard intervals for a given distributed table.
|
||||||
* The function returns 0 if table is not distributed, or no shards can be found for
|
* The function returns 0 if no shards can be found for the given relation id.
|
||||||
* the given relation id.
|
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
ShardIntervalCount(Oid relationId)
|
ShardIntervalCount(Oid relationId)
|
||||||
{
|
{
|
||||||
CitusTableCacheEntry *cacheEntry = GetCitusTableCacheEntry(relationId);
|
CitusTableCacheEntry *cacheEntry = GetCitusTableCacheEntry(relationId);
|
||||||
int shardIntervalCount = 0;
|
|
||||||
|
|
||||||
if (cacheEntry->isCitusTable)
|
return cacheEntry->shardIntervalArrayLength;
|
||||||
{
|
|
||||||
shardIntervalCount = cacheEntry->shardIntervalArrayLength;
|
|
||||||
}
|
|
||||||
|
|
||||||
return shardIntervalCount;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -29,6 +29,7 @@
|
||||||
#include "distributed/multi_logical_optimizer.h"
|
#include "distributed/multi_logical_optimizer.h"
|
||||||
#include "distributed/multi_logical_planner.h"
|
#include "distributed/multi_logical_planner.h"
|
||||||
#include "distributed/multi_physical_planner.h"
|
#include "distributed/multi_physical_planner.h"
|
||||||
|
#include "distributed/reference_table_utils.h"
|
||||||
#include "distributed/relation_restriction_equivalence.h"
|
#include "distributed/relation_restriction_equivalence.h"
|
||||||
#include "distributed/query_pushdown_planning.h"
|
#include "distributed/query_pushdown_planning.h"
|
||||||
#include "distributed/query_utils.h"
|
#include "distributed/query_utils.h"
|
||||||
|
@ -466,7 +467,7 @@ IsReferenceTableRTE(Node *node)
|
||||||
{
|
{
|
||||||
Oid relationId = NodeTryGetRteRelid(node);
|
Oid relationId = NodeTryGetRteRelid(node);
|
||||||
return relationId != InvalidOid && IsCitusTable(relationId) &&
|
return relationId != InvalidOid && IsCitusTable(relationId) &&
|
||||||
PartitionMethod(relationId) == DISTRIBUTE_BY_NONE;
|
IsReferenceTable(relationId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -66,11 +66,6 @@ IsReferenceTable(Oid relationId)
|
||||||
{
|
{
|
||||||
CitusTableCacheEntry *tableEntry = GetCitusTableCacheEntry(relationId);
|
CitusTableCacheEntry *tableEntry = GetCitusTableCacheEntry(relationId);
|
||||||
|
|
||||||
if (!tableEntry->isCitusTable)
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (tableEntry->partitionMethod != DISTRIBUTE_BY_NONE)
|
if (tableEntry->partitionMethod != DISTRIBUTE_BY_NONE)
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
|
|
Loading…
Reference in New Issue