Hi Julian, Thanks for asking those questions! I was providing this material as an educational reference since the use case is very similar to the resources I shared. I found those references to help enrich the Calcite community in the past. For example, Gavin Ray has written an article [1] on converting GraphQL to Calcite RelNodes after sharing similar resources, which I think is a pretty nice contribution to Calcite (while not implemented in either code base).
I might not be the best person to answer the IP question since there is dedicated staff to address this type of questions at LinkedIn, but I'm happy to route that question to the appropriate people. In addition to the IP aspect, forking might not be productive since Coral is quickly evolving, especially around its core APIs and workflows to translate between input and output dialects, but I am sure there are ways to achieve mutual leverage, starting from sharing knowledge and experiences. [1] https://datalore.jetbrains.com/view/notebook/JYTVfn90xYSmv6U5f2NIQR Thanks, Walaa. On Wed, Jun 1, 2022 at 12:36 PM Julian Hyde <jhyde.apa...@gmail.com> wrote: > Let’s suppose that there is code/tests in Coral would allow Calcite to > implement this feature. Under the terms of Coral’s license (BSD2) some > COULD copy code from Coral to Calcite, but SHOULD they? > > As an Apache project, and as individuals participating in an open source > community beyond the ASF, we must be respectful of other projects’ IP and > the “do not fork” principle. > > I would love to hear from Walaa or other Coral committers suggestions how > we can share functionality between the projects. > > Julian > > > > On Jun 1, 2022, at 7:47 AM, Walaa Eldin Moustafa <wa.moust...@gmail.com> > wrote: > > > > Hi Erik, > > > > Coral [1, 2] which is based on Calcite might be a good starting point for > > this type of work.There are a couple of dialects it supports right now: > > Hive (or Spark) and Trino (or Presto). You can check out the > corresponding > > test cases [3, 4] for these two dialects. coral-common [5] is a module > that > > contains all Calcite-related infra required to support any dialect. It is > > extended by both coral-hive and coral-trino. > > > > [1] https://github.com/linkedin/coral > > [2] https://engineering.linkedin.com/blog/2020/coral > > [3] > > > https://github.com/linkedin/coral/blob/master/coral-hive/src/test/java/com/linkedin/coral/hive/hive2rel/HiveToRelConverterTest.java > > [4] > > > https://github.com/linkedin/coral/blob/master/coral-trino/src/test/java/com/linkedin/coral/trino/trino2rel/TrinoToRelConverterTest.java > > [5] https://github.com/linkedin/coral/tree/master/coral-common > > > > Thanks, > > Walaa. > > > > > > On Wed, Jun 1, 2022 at 6:44 AM Erik Goldman <erik.gold...@hunters.ai> > wrote: > > > >> I'm Erik <https://www.linkedin.com/in/erik-goldman/> and I'm currently > >> working on a project that requires a patch to Calcite as described in > this > >> email < > https://www.mail-archive.com/dev@calcite.apache.org/msg17417.html> > >> (a > >> related Jira task is here > >> <https://issues.apache.org/jira/browse/CALCITE-4919>) > >> > >> My current work is here > >> < > >> > https://github.com/ErikGoldman/calcite-snowflake/commits/snowflake-progress > >>> > >> but > >> it needs much more work and understanding of the system to be > successful. > >> > >> I'm very early to Calcite and I think it would be better to work with > >> someone who understands the system before doing more work on this. > >> > >> Would anyone be open to offering some advice or helping with the work? > I am > >> happy to pay a competitive hourly rate for the assistance. > >> > >> Thank you! > >> > >