feat(csharp): BigQueryPerformance changes#88
feat(csharp): BigQueryPerformance changes#88CurtHagenlocher merged 11 commits intoadbc-drivers:mainfrom
Conversation
CurtHagenlocher
left a comment
There was a problem hiding this comment.
Thanks! Feedback left.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Curt Hagenlocher <curt@hagenlocher.org>
|
In principle, shouldn't |
There was a problem hiding this comment.
Thanks! My comments are mostly nitpicking, but we should probably think a little harder about returning the schema for nested structured data because it will be hard to fix this later without breaking existing uses.
Edit: there are also a few linter errors from the build.
CurtHagenlocher
left a comment
There was a problem hiding this comment.
Thanks! The changes look good but the linter is still complaining. I think it's mostly about lines with trailing white space. One way to fix those in VS is to open the file and use Control-K Control-D to autoformat. (You can also do it manually of course.)
Thanks for the review, I did as suggested. I'm hoping it should be without errors now. |
|
@alokdeorani, should I assume that you closed this PR by accident? |
Yeah I think I did by mistake. |
|
The linter is still failing :(. I think it's because my previous advice about autoformat doesn't work for trailing whitespace in comments. I guess autoformat probably doesn't touch comments. |
Checking |
I did some more fixes. I hope this time it will work. |
Almost there! It looks like BigQueryStatement.cs either has an extra newline at the end or is missing a newline at the end. |
Fixed it |
This change focuses on performance and metadata handling.
Key changes include:
Metadata Query Support: The driver now supports standard
ADBC metadata retrieval functions. This allows you to query for catalogs (projects), schemas (datasets), tables, columns, and primary keys.
This is much faster than querying InformationSchema.
Automatic Large Query Handling: The driver now performs a "dry run" before executing a query. If it estimates that the query will process a large amount of data (over 120MB), it automatically enables settings to handle large results, improving performance and reliability for big queries.
New Configuration Parameters: Several new parameters have been added to control these new features, such as adbc.bigquery.include_public_project_id and parameters for metadata commands.
Testing Updates: The testing framework has been updated to validate the new metadata functionality.