feat: implement DuckDB filesystem integration for Vortex file handling#6198
feat: implement DuckDB filesystem integration for Vortex file handling#6198iceboundrock wants to merge 2 commits intovortex-data:developfrom
Conversation
Merging this PR will not alter performance
Comparing Footnotes
|
0ax1
left a comment
There was a problem hiding this comment.
Thanks for taking the time to look into this. There's a couple of issues around thread safety / locking, error handling and memory leaks.
If you used AI to assist in writing the code for your PR please mention this in your PR description (see: https://github.com/vortex-data/vortex/blob/develop/CONTRIBUTING.md).
vortex-duckdb/src/scan.rs
Outdated
| vortex_bail!("GCS glob expansion not yet implemented") | ||
| } | ||
| _ => { | ||
| let paths = glob(file_glob.as_ref()) |
There was a problem hiding this comment.
Shouldn't we also hook into the duckdb_fs_glob for local paths? Or asked differently, should we make any assumptions at all here about globbing details of duckdb_fs_glob but rather unconditionally delegate to duckdb? Whether or not gcs is supported is now a Duckdb implementation detail.
There was a problem hiding this comment.
My suggestion is to just do this let file_urls = duckdb_fs_glob(..).
There was a problem hiding this comment.
ok, I will move the local file handling logic into duckdb_fs_glob
0ax1
left a comment
There was a problem hiding this comment.
Almost there, thanks for taking the time to address the comments!
66fedc0 to
b6e15a3
Compare
Hi @0ax1 , any other comments? |
Currently swamped with other work but will get back to it when I find a free moment. |
|
@iceboundrock - quick question on this. Do you know if it's possible to grab the config back out from DuckDB's filesystems? I don't want to block this PR, don't worry(!), but we do have plans to implement a high performance I/O layer at some point and it would probably make more sense to try and configure our own I/O using duckdb configs, rather than attempt to optimize calling back into DuckDB's I/O layer. |
Could you please elaborate on what We probably can do the same as the httpfs extension does. Code link: |
Signed-off-by: Ruoshi <me@ruoshi.li>
…chemas. Signed-off-by: Ruoshi <me@ruoshi.li>
20ea783 to
b2db9de
Compare
Uh oh!
There was an error while loading. Please reload this page.