-
Notifications
You must be signed in to change notification settings - Fork 56
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
Add the PostgresStorageExtension
to DuckDB
#97
Conversation
…on to be able to have a CatalogExtension
…h an index scan, view or regular table
… replacement portion
Now that the duckdb connection is a singleton this needs some more work, as it currently assumes the catalog to be thrown away after every query. |
those changes aren't on main, but it is something to think about going forward. |
For clarity, @Y-- and me are working together for a POC that can be used to show motherduck. But those PRs are not being merged in main yet (they are not nearly ready yet for actual usage) |
…ie when the transaction ends
Can you fix the merge conflicts with master? Then it should be much easier to try out. Also when compiling this PR locally I see a bunch of warnings. |
@JelteF please review and let me know what the remaining blockers are, it's been open quite a while now. |
when I merge with main I can't resolve a crash in I suspect that the query data gets prematurely deleted, it's duckdb data it's trying and failing to access. |
Did you fix this? Because I see you merged with main afterwards, and tests seem to pass now on CI. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Okay, I think this is pretty much good to merge. Left some final comments. The major one being the (seemingly) incorrect merge. But all should be easy to address afaict.
Totally makes sense. Let's merge this quickly now. |
it's not, I can reproduce this on main and the PR that introduced it is #195 |
This PR aims to implement #56
It is still very barebones, a lot of the API's virtual methods are not implemented, but all existing tests are passing.
The existing functionality has been preserved as best as possible:
PostgresIndexTable
TableCatalogEntry will use thePostgresIndexScanFunction
PostgresHeapTable
TableCatalogEntry will use thePostgresSeqScanFunction
I could find no tests for the PostgresIndexScanFunction, it's possible that functionality has been broken, but I've tried to keep as much of the existing code in tact.