Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

meta: Port backends to new relational operators/sqlglot #7909

Closed
21 tasks done
jcrist opened this issue Jan 4, 2024 · 19 comments
Closed
21 tasks done

meta: Port backends to new relational operators/sqlglot #7909

jcrist opened this issue Jan 4, 2024 · 19 comments
Assignees
Labels
tes-required-for-merge Issues that must addressed before merging the-epic-split branch into main
Milestone

Comments

@jcrist
Copy link
Member

jcrist commented Jan 4, 2024

We currently have a long running branch porting backends to use the new relational operators (and sql backends to use sqlglot) introduced by:

This is a meta issue to track and organize remaining backends that need to be ported before that branch can be merged with main. Feel free to edit this list to keep it up to date.

SQL Backends

Other Backends

@jcrist
Copy link
Member Author

jcrist commented Jan 4, 2024

I'll start working on the sqlite backend now to familiarize myself with the new sqlglot code path. @cpcloud also just pinged on zulip saying he's working on the mysql backend. AFAIK all other backends are still available for work.

@cpcloud
Copy link
Member

cpcloud commented Jan 5, 2024

For Impala, we should be able to use the hive sqlglot dialect and supplement by adding rules to its TRANSFORMS dict (see the DataFusion backend for a custom dialect subclass).

@cpcloud cpcloud pinned this issue Jan 6, 2024
@cpcloud
Copy link
Member

cpcloud commented Jan 6, 2024

I am starting on MS SQL now.

@kszucs
Copy link
Member

kszucs commented Jan 8, 2024

Working on PySpark. Since the tests are really slow it will take some time.

@cpcloud
Copy link
Member

cpcloud commented Jan 8, 2024

I will start on BigQuery today or tomorrow, depending on how much progress I can make with mssql

@gforsyth
Copy link
Member

gforsyth commented Jan 8, 2024

I'll start on Oracle

@cpcloud cpcloud added tes-required-for-release Things that must be addressed before *release* of `main` after merging in `the-epic-split` tes-required-for-merge Issues that must addressed before merging the-epic-split branch into main labels Jan 8, 2024
@jcrist jcrist changed the title meta: Porting to new relational operators/sqlglot meta: Port backends to new relational operators/sqlglot Jan 8, 2024
@cpcloud
Copy link
Member

cpcloud commented Jan 12, 2024

I'm starting on the impala backend today.

@cpcloud
Copy link
Member

cpcloud commented Jan 16, 2024

I'll start on Druid today.

@cpcloud
Copy link
Member

cpcloud commented Jan 18, 2024

I am working on the exasol port today.

@lostmygithubaccount
Copy link
Member

Weekly Update:
2024-01-18

This is the primary focus of the team, intending to get all backends refactored to the new relational model (building on previous refactor work) and in the process migrating from SQLAlchemy to SQLGlot. We are on track to get this done in Q1, with most backends already ported and the rest in progress (excluding Flink, RisingWave, and perhaps one more).

This week we landed the following backends in the port:

  • druid
  • impala
  • pyspark
  • BigQuery is ported and awaiting a final review.

Work is started on these backends:

  • exasol
  • sqlite
  • oracle
  • dask

(copying over last week's update on behalf of Phillip)

@cpcloud
Copy link
Member

cpcloud commented Jan 23, 2024

Work has completed on:

  • exasol
  • oracle

In PR:

  • dask

In progress:

  • sqlite

Not yet started:

  • flink
  • risingwave

Reviews:

  • risingwave (likely to go in this week)

Others:

  • flink blog
  • 8.0.0 release

@jcrist jcrist removed the tes-required-for-release Things that must be addressed before *release* of `main` after merging in `the-epic-split` label Jan 30, 2024
@cpcloud cpcloud modified the milestones: Q1 2024, 9.0 Jan 31, 2024
@cpcloud
Copy link
Member

cpcloud commented Jan 31, 2024

Work has completed on:

  • sqlite

In review:

  • dask

In progress:

  • flink

Not yet started:

  • risingwave

Others:

  • risingwave-sans-sqlglot was merged

We're close to merging the-epic-split into main, and have reorganized remaining work items into tes-required-for-merge and tes-required-for-release labels to help identify blockers for the respective steps.

@cpcloud
Copy link
Member

cpcloud commented Feb 8, 2024

Work to port backends has completed on:

  • dask
  • risingwave

In review:

  • flink

We're VERY close!

We've tagged a bunch of follow ups using the labels mentioned in the previous comment.

@cpcloud
Copy link
Member

cpcloud commented Feb 12, 2024

All backends ported and merged into the-epic-split. Closing this out!

Tracking the epic rebase in #8310.

Thanks to all involved in porting and refactoring, this was a huge effort!

@cpcloud cpcloud closed this as completed Feb 12, 2024
@github-project-automation github-project-automation bot moved this from cooking to done in Ibis planning and roadmap Feb 12, 2024
@lostmygithubaccount
Copy link
Member

reopening and adding [DONE] in the title for keep in on the GH project

great work everyone!

@github-project-automation github-project-automation bot moved this from done to backlog in Ibis planning and roadmap Feb 15, 2024
@lostmygithubaccount lostmygithubaccount changed the title meta: Port backends to new relational operators/sqlglot meta: [DONE] Port backends to new relational operators/sqlglot Feb 15, 2024
@cpcloud
Copy link
Member

cpcloud commented Feb 15, 2024

@lostmygithubaccount Why do we need to keep these open?

@lostmygithubaccount
Copy link
Member

so they aren't removed from the GH project after 2 weeks and our roadmap is empty

@cpcloud
Copy link
Member

cpcloud commented Feb 15, 2024

We should try to come up with a way to address the specific concern without having to "hack" github issues by adding conventions.

A roadmap's issues IMO should be closed. It indicates that work is complete. We should also close milestones when they are reached, similar to how we close out release milestones when the release is complete.

If our roadmap is empty, and we don't want it to be empty, which seems reasonable, then we need to add more things to it.

@cpcloud cpcloud unpinned this issue Feb 15, 2024
@lostmygithubaccount lostmygithubaccount changed the title meta: [DONE] Port backends to new relational operators/sqlglot meta: Port backends to new relational operators/sqlglot Feb 15, 2024
@lostmygithubaccount
Copy link
Member

re-closing per discussion

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tes-required-for-merge Issues that must addressed before merging the-epic-split branch into main
Projects
Archived in project
Development

No branches or pull requests

5 participants