You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Ruben Quesada Lopez (JIRA)" <ji...@apache.org> on 2019/06/01 16:15:00 UTC

[jira] [Comment Edited] (CALCITE-2812) Add algebraic operators to allow expressing recursive queries

    [ https://issues.apache.org/jira/browse/CALCITE-2812?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16853747#comment-16853747 ] 

Ruben Quesada Lopez edited comment on CALCITE-2812 at 6/1/19 4:14 PM:
----------------------------------------------------------------------

I closed the PR I mentioned in my previous comment because it did not solve the issue.
I am now working on an environment  (macOS 10.14.5, JDK 8) where I can reproduce the problem. It is a strange situation, I cannot understand what is happening, but this is what I have verified so far in my local environment:
- As pointed out by [~hyuan] by email, the problem seems related to EnumerableRepeatUnionHierarchyTest
- There is no issue when running that test individually
- However, when running the test suite via maven, the process gets stuck and it never finishes, systematically. If I comment out EnumerableRepeatUnionHierarchyTest.class from CalciteSuite, the problem is gone
- The Jenkins build reproduces this issue too, although randomly from time to time; for example [build #1197 with jdk1.8|https://builds.apache.org/job/Calcite-Master/1197/jdk=JDK%201.8%20(latest),label_exp=ubuntu&&!cloud-slave&&!H27/console] or [build #1198 with jdk11|https://builds.apache.org/job/Calcite-Master/1198/jdk=JDK%2011%20(latest),label_exp=ubuntu&&!cloud-slave&&!H27/console], both timed-out
- The issue seems to be related to the fact that EnumerableRepeatUnionHierarchyTest is a Parameterized test, and it probably concerns how the test is initialized rather than the test itself, because I also see the problem if the Test method is empty or marked as Ignore
- The issue also happens if I modify the data() method to return just 1 set of parameters (to run the test just once) instead of 16.
- If I re-write the class to run exactly the same test scenarios without being Parameterized, the problem is gone

I will continue investigating.


was (Author: rubenql):
I closed the PR I mentioned in my previous comment because it did not solve the issue.
I am now working on an environment  (macOS 10.14.5, JDK 8) where I can reproduce the problem. It is a strange situation, I cannot understand what is happening, but this is what I have verified so far in my local environment:
- As pointed out by [~hyuan] by email, the problem seems related to EnumerableRepeatUnionHierarchyTest
- There is no issue when running that test individually
- However, when running the test suite via maven, the process gets stuck and it never finishes, systematically
- The Jenkins build reproduces this issue too, although randomly from time to time; for example [build #1197 with jdk1.8|https://builds.apache.org/job/Calcite-Master/1197/jdk=JDK%201.8%20(latest),label_exp=ubuntu&&!cloud-slave&&!H27/console] or [build #1198 with jdk11|https://builds.apache.org/job/Calcite-Master/1198/jdk=JDK%2011%20(latest),label_exp=ubuntu&&!cloud-slave&&!H27/console], both timed-out
- The issue seems to be related to the fact that EnumerableRepeatUnionHierarchyTest is a Parameterized test, and it probably concerns how the test is initialized rather than the test itself, because I also see the problem if the Test method is empty or marked as Ignore
- The issue also happens if I modify the data() method to return just 1 set of parameters (to run the test just once) instead of 16.
- If I re-write the class to run exactly the same test scenarios without being Parameterized, the problem is gone

I will continue investigating.

> Add algebraic operators to allow expressing recursive queries
> -------------------------------------------------------------
>
>                 Key: CALCITE-2812
>                 URL: https://issues.apache.org/jira/browse/CALCITE-2812
>             Project: Calcite
>          Issue Type: New Feature
>          Components: core
>    Affects Versions: 1.18.0
>            Reporter: Stamatis Zampetakis
>            Assignee: Ruben Quesada Lopez
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.20.0
>
>          Time Spent: 10h
>  Remaining Estimate: 0h
>
> In order to parse, optimize, and execute, recursive queries, expressed in SQL, datalog, SPARQL, or other high level language we need first to be able to represent recursive queries in relational algebra.
> The subject has been previously discussed in the dev list (see thread with title [Recursive query, graph query, Datalog|http://mail-archives.apache.org/mod_mbox/calcite-dev/201712.mbox/%3CCAPSgeESFyih9_hf9=uMWFN00BCR7sjf0T+FRY2=ARy3Ygm1Giw@mail.gmail.com%3E]) where various ideas  and optimizations were proposed. 
> In this issue, we attempt to address only the algebraic part providing the following:
> # logical operator(s) for expressing recursion;
> # naive physical operator(s) for the Enumerable convention;
> # ability to create a recusive plan using the RelBuilder. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)