Dmitry Lychagin created ASTERIXDB-2354:
------------------------------------------
Summary: Incorrect partition constraints propagation for binary
operators
Key: ASTERIXDB-2354
URL: https://issues.apache.org/jira/browse/ASTERIXDB-2354
Project: Apache AsterixDB
Issue Type: Bug
Components: COMP - Compiler
Reporter: Dmitry Lychagin
Assignee: Dmitry Lychagin
Partition constraints are to computed correctly for binary operators in
JobBuilder.setPartitionConstraintsBottomup()
Currently the constraint from the second branch overrides the one from the
first branch even if the second branch constraint is 'null'. This leads to the
following exception from this query:
create type tpch.OrderType as closed {
o_orderkey : bigint, _custkey : bigint, o_orderstatus : string, o_totalprice :
double,
o_orderdate : string, o_orderpriority : string, o_clerk : string,
o_shippriority : bigint,
o_comment : string
};
create dataset Orders(OrderType) primary key o_orderkey;
create index OrdersIdx on Orders (o_custkey) type btree;
SELECT ds.DatasetName as v1
FROM Metadata.`Dataset` ds
WHERE ds.DatasetName LIKE "Orders%"
UNION ALL
SELECT ds.DatasetName v1, idx.DatasetName v2, idx.IndexName v3
FROM Metadata.`Index` idx, Metadata.`Dataset` ds
WHERE ds.DatasetName LIKE "Orders%" and idx.DatasetName LIKE "Orders%"
ORDER BY v1, v2, v3
------------------------------
Exception in thread "Worker:ClusterController" java.lang.AssertionError:
Dependency activity partitioned differently from dependent: 1 != 4
at
org.apache.hyracks.control.cc.executor.ActivityClusterPlanner.buildActivityPlanMap(ActivityClusterPlanner.java:109)
at
org.apache.hyracks.control.cc.executor.ActivityClusterPlanner.planActivityCluster(ActivityClusterPlanner.java:71)
at
org.apache.hyracks.control.cc.executor.JobExecutor.findRunnableTaskClusterRoots(JobExecutor.java:173)
at
org.apache.hyracks.control.cc.executor.JobExecutor.findRunnableTaskClusterRoots(JobExecutor.java:149)
at
org.apache.hyracks.control.cc.executor.JobExecutor.findRunnableTaskClusterRoots(JobExecutor.java:139)
at
org.apache.hyracks.control.cc.executor.JobExecutor.startRunnableActivityClusters(JobExecutor.java:198)
at
org.apache.hyracks.control.cc.executor.JobExecutor.notifyTaskComplete(JobExecutor.java:668)
at
org.apache.hyracks.control.cc.work.TaskCompleteWork.performEvent(TaskCompleteWork.java:56)
at
org.apache.hyracks.control.cc.work.AbstractTaskLifecycleWork.runWork(AbstractTaskLifecycleWork.java:72)
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)