Skip to content

Point Errors For Unreadable Glue Tables To glue_get_table_response() - #82

Merged
Tmonster merged 3 commits into
duckdb:mainfrom
Richard-Durkee:glue-describe-otf
Oct 12, 2026
Merged

Tmonster merged 3 commits into
duckdb:mainfrom
Richard-Durkee:glue-describe-otf

Conversation

@Richard-Durkee

@Richard-Durkee Richard-Durkee commented Oct 9, 2026 •

Copy link
Copy Markdown
Contributor

When a query binds a Glue table the extension can't read, the error now says how to inspect the table instead:

  • Hive tables with an unsupported SerDe (e.g. ORC) fail in GlueTableInfo::GetFileFormat as before, which covers reads and writes. The message now ends with "use glue_get_table_response() to inspect the table definition".
  • Open table formats the extension doesn't read yet (e.g. Delta) fail in GlueTable::GetScanFunction with Glue table 'db.t' has table format DELTA, which can not be read yet; use glue_get_table_response() to inspect its definition, instead of Scan from table with type DELTA.

DESCRIBE binds the table, so it fails with the same messages. Describing open table formats is left to format-specific support.

@Richard-Durkee
Richard-Durkee force-pushed the glue-describe-otf branch 3 times, most recently from d125b80 to 70db101 Compare October 9, 2026 13:01
@Richard-Durkee
Richard-Durkee marked this pull request as ready for review October 9, 2026 16:12
@Richard-Durkee
Richard-Durkee force-pushed the glue-describe-otf branch 2 times, most recently from 8ccae7e to 73b07d6 Compare October 9, 2026 22:33

@Tmonster Tmonster left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can alter the error message thrown in in GlueTableInfo::GetFileFormat Then we also won't have to introduce all the extra function data/information.

Either GlueTableInfo::GetFileFormat can return HiveFileFormat::Unsupported and the calling function can use that to throw. GetFileFormat is used to bind read and write operations though, so I think it's safe to throw there and mention glue_get_table_response

return GetHiveScanFunction(context, bind_data, latest_info);
}
default:
throw NotImplementedException("Scan from table with type %s", latest_info.GetFormatName());

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should not be throwing here is the Hive table is backed by a format DuckDB cannot read yet. Here we throw if the otf is an oft that duckdb-aws-glue does not support yet (like Delta)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ack.

@Richard-Durkee Richard-Durkee changed the title Return Column Schema For Non-Hive Tables To Enable DESCRIBE Point Errors For Unreadable Glue Tables To glue_get_table_response() Oct 11, 2026
@Tmonster

Copy link
Copy Markdown
Member

Csv regression tests are flaky

@Tmonster

Copy link
Copy Markdown
Member

Thanks!

@Tmonster
Tmonster merged commit 9382813 into duckdb:main Oct 12, 2026
19 of 21 checks passed
Tmonster pushed a commit to Tmonster/duckdb-aws-glue that referenced this pull request Oct 12, 2026
glue_table.cpp: the per-query Glue table entry of this branch with the error message of duckdb#82
for tables that can not be read.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants