duckdb/duckdb-rs

add default extensions

Opened this issue · 1 comments

kxxu commented

rust binary do not have default extensions, extensions need auto install and load, but auto install or manual install both get error:

for manual install:
"Catalog Error: Copy Function with name "parquet" is not in the catalog, but it exists in the parquet extension.\n\nPlease try installing and loading the parquet extension by running:\nINSTALL parquet;\nLOAD parquet;\n\nAlternatively, consider enabling auto-install and auto-load by running:\nSET autoinstall_known_extensions=1;\nSET autoload_known_extensions=1;"

for auto install:
DuckDBFailure(Error { code: Unknown, extended_code: 1 }, Some("Invalid Input Error: Initialization function "parquet_init" from file "/root/.duckdb/extensions/v1.0.0/linux_amd64_gcc4/parquet.duckdb_extension" threw an exception: "Attempted to dereference unique_ptr that is NULL!""

platform
CentOS Linux release 7.9.2009 (Core)

duckdb version
1.0.0

need default extensions
parquet, json, icu

I'm hitting a related issue:

Error: IO Error: Extension "//.duckdb/extensions/v1.1.1/linux_amd64/h3.duckdb_extension" not found.

I'm using the bundled build, and it works on macOS, but not in my Linux docker image 🤔

UPDATE: It looks like the issue is that the docker image is trying to write to /.duckdb/ and is getting a permission error. That explains it a bit better. I think the solution is to prebuild the h3 extension.