[
https://issues.apache.org/jira/browse/HIVE-21818?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16856329#comment-16856329
]
Hive QA commented on HIVE-21818:
--------------------------------
Here are the results of testing the latest attachment:
https://issues.apache.org/jira/secure/attachment/12970863/HIVE-21818.04.patch
{color:red}ERROR:{color} -1 due to build exiting with an error
Test results:
https://builds.apache.org/job/PreCommit-HIVE-Build/17424/testReport
Console output: https://builds.apache.org/job/PreCommit-HIVE-Build/17424/console
Test logs: http://104.198.109.242/logs/PreCommit-HIVE-Build-17424/
Messages:
{noformat}
Executing org.apache.hive.ptest.execution.TestCheckPhase
Tests exited with: Exception: Patch URL
https://issues.apache.org/jira/secure/attachment/12970863/HIVE-21818.04.patch
was found in seen patch url's cache and a test was probably run already on it.
Aborting...
{noformat}
This message is automatically generated.
ATTACHMENT ID: 12970863 - PreCommit-HIVE-Build
> CBO: Copying TableRelOptHiveTable has metastore traffic
> -------------------------------------------------------
>
> Key: HIVE-21818
> URL: https://issues.apache.org/jira/browse/HIVE-21818
> Project: Hive
> Issue Type: Bug
> Components: CBO
> Reporter: Gopal V
> Assignee: Jesus Camacho Rodriguez
> Priority: Major
> Attachments: HIVE-21818.01.patch, HIVE-21818.02.patch,
> HIVE-21818.03.patch, HIVE-21818.04.patch, HIVE-21818.patch
>
>
> While the optimizer is running, whenever it makes a copy of the TableScan to
> perform potential rewrites, there is Hive metastore traffic from inside CBO
> optimizer.
> {code}
> public RelOptHiveTable(RelOptSchema calciteSchema, RelDataTypeFactory
> typeFactory, List<String> qualifiedTblName,
> RelDataType rowType, Table hiveTblMetadata, List<ColumnInfo>
> hiveNonPartitionCols,
> List<ColumnInfo> hivePartitionCols, List<VirtualColumn>
> hiveVirtualCols, HiveConf hconf,
> Map<String, PrunedPartitionList> partitionCache, Map<String,
> ColumnStatsList> colStatsCache,
> AtomicInteger noColsMissingStats) { ....
> Pair<List<ImmutableBitSet>, List<ImmutableBitSet>> constraintKeys =
> generateKeys();
> this.keys = constraintKeys.left;
> this.nonNullablekeys = constraintKeys.right;
> this.referentialConstraints = generateReferentialConstraints();
> }
> {code}
> This is triggered from the rules as the partition pruner
> {code}
> protected void perform(RelOptRuleCall call, Filter filter,
> HiveTableScan tScan) {
> // Original table
> RelOptHiveTable hiveTable = (RelOptHiveTable) tScan.getTable();
> // Copy original table scan and table
> HiveTableScan tScanCopy = tScan.copyIncludingTable(tScan.getRowType());
> RelOptHiveTable hiveTableCopy = (RelOptHiveTable) tScanCopy.getTable();
> ...
> if (StringUtils.equals(hiveTableCopy.getPartitionListKey(),
> hiveTable.getPartitionListKey())) {
> // Nothing changed, we do not need to produce a new expression
> return;
> }
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)