Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
0.9.3
-
None
Description
The plan for the below query has cyclic dependency among activities which causes a SO exception in Hyracks when trying to schedule the activities of the plan.
LET dv_name = ["test2", "test1"], ds_name = ["ds2", "ds1"], syn_name = [ "syn2", "syn1" ], synonym_names = (SELECT s.SynonymName, s.ObjectName FROM Metadata.`Synonym` s, syn_name WHERE s.SynonymName = syn_name), dataset_ds_dv_names = (SELECT d.DatasetName, d.DataverseName FROM Metadata.`Dataset` d, (SELECT * FROM ds_name, dv_name) AS ds_dv_names WHERE d.DatasetName = ds_dv_names.ds_name AND d.DataverseName = ds_dv_names.dv_name), dataset_dv_ds_names = (SELECT d.DatasetName, d.DataverseName FROM Metadata.`Dataset` d, (SELECT * FROM dv_name, ds_name) AS dv_ds_names WHERE d.DatasetName = dv_ds_names.ds_name AND d.DataverseName = dv_ds_names.dv_name), left_branch = (SELECT s.SynonymName, s.DataverseName, s.ObjectName FROM Metadata.`Synonym` s LEFT OUTER JOIN dataset_dv_ds_names ON dataset_dv_ds_names.DatasetName = s.ObjectName ORDER BY s.DataverseName, s.SynonymName), right_branch = (SELECT synonym_names.SynonymName FROM synonym_names LEFT OUTER JOIN dataset_ds_dv_names ON dataset_ds_dv_names.DatasetName = synonym_names.ObjectName) FROM left_branch lb LEFT OUTER JOIN right_branch rb ON lb.ObjectName = rb.SynonymName SELECT lb.DataverseName, lb.SynonymName ORDER BY lb.DataverseName, lb.SynonymName;
ExtractCommonOperatorsRule causes the issue when it extracts common segments of the plan and introduces replicate operators.
Attachments
Issue Links
- relates to
-
ASTERIXDB-3076 Hyracks should detect and reject invalid jobs
- Open
-
ASTERIXDB-3077 Provide ways to control ExtractCommonOperatorsRule
- Open