-
Notifications
You must be signed in to change notification settings - Fork 23
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
IOException when querying table with a list<int> column. #47
Comments
(Whoops, originally tried this without adding the Thanks for the quick response! I tried the workaround suggested in that thread: duckdb.sql("force install iceberg from 'http://nightly-extensions.duckdb.org'")
duckdb.sql("load iceberg")
duckdb.sql(f"SELECT * FROM iceberg_scan('{metadata_location}', skip_schema_inference=True) LIMIT 10") and it worked perfectly! |
I think I've addressed this with #50, it should fix parsing the metadata. |
I'm getting the same error with DuckDB v1.0.0 1f98600c2c and some Iceberg data with nested fields 🟡◗ SELECT *
FROM iceberg_scan('s3://my-bucket/iceberg/rmoff.db/rmoff_basket02/metadata/00640-ed419044-046c-44c0-a20a-e51f0cce381f.metadata.json');
Run Time (s): real 1.685 user 0.008519 sys 0.006796
IO Error: Invalid field found while parsing field: type It works fine if I use 🟡◗ describe tmp
;
┌─────────────────┬────────────────────────────────────────────────────────────────────────────────────┬─────────┬─────────┬─────────┬─────────┐
│ column_name │ column_type │ null │ key │ default │ extra │
│ varchar │ varchar │ varchar │ varchar │ varchar │ varchar │
├─────────────────┼────────────────────────────────────────────────────────────────────────────────────┼─────────┼─────────┼─────────┼─────────┤
│ basketId │ VARCHAR │ YES │ │ │ │
│ customerId │ VARCHAR │ YES │ │ │ │
│ customerName │ VARCHAR │ YES │ │ │ │
│ customerAddress │ VARCHAR │ YES │ │ │ │
│ storeId │ VARCHAR │ YES │ │ │ │
│ storeName │ VARCHAR │ YES │ │ │ │
│ storeLocation │ VARCHAR │ YES │ │ │ │
│ products │ STRUCT(productName VARCHAR, quantity INTEGER, unitPrice FLOAT, category VARCHAR)[] │ YES │ │ │ │
│ timestamp │ VARCHAR │ YES │ │ │ │
└─────────────────┴────────────────────────────────────────────────────────────────────────────────────┴─────────┴─────────┴─────────┴─────────┘
Run Time (s): real 0.002 user 0.000879 sys 0.000218 The Iceberg manifest is:
|
Hello, thanks for your great work on duckdb-iceberg!
I'm encountering an issue where attempting to query an iceberg table with
iceberg_scan
fails if the table has a column which is a list of ints (list<int>
).This seems to be related to an error parsing the table schema. I was wondering if there maybe was no logic for complex types in the duckdb-iceberg extension, but it appears that there is.
The text was updated successfully, but these errors were encountered: