-
Notifications
You must be signed in to change notification settings - Fork 51
Add metric view metadata support #286
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
Conversation
f9a11e2 to
65efc20
Compare
Signed-off-by: Shivam Raj <[email protected]>
65efc20 to
5a113cb
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds support for metric view metadata in the Databricks SQL Go driver, enabling getTables(), getTableTypes(), and getColumns() to return METRIC_VIEW entries when enabled. The feature is disabled by default for backward compatibility.
- Added
EnableMetricViewMetadataconfiguration parameter with DSN parsing and connector option support - Session automatically injects the required Spark configuration when enabled
- Added comprehensive unit tests verifying enabled and disabled states
Reviewed Changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| internal/config/config.go | Added EnableMetricViewMetadata field to UserConfig with DSN parsing support |
| connector.go | Implemented session configuration injection and WithEnableMetricViewMetadata option |
| connector_test.go | Added tests for enabled and default disabled states |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
gopalldb
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Check suggestions from copilot
Address PR review comments by simplifying the session configuration logic. Always create a new map and copy existing params regardless of whether metric view metadata is enabled. This makes the code cleaner and more consistent: - No nil check needed (ranging over nil map is safe in Go) - Consistent behavior in all cases - More readable code Resolves reviewer comments from @vikrantpuppala, @copilot-pull-request-reviewer, and @gopalldb Signed-off-by: Shivam Raj <[email protected]>
3edd436
Description
This PR adds support for metric view metadata in the Databricks SQL Go driver, following the JDBC driver implementation.
Changes
EnableMetricViewMetadataboolean configuration parameter toUserConfigenableMetricViewMetadataquery parameterWithEnableMetricViewMetadata(bool)connector optionspark.sql.thriftserver.metadata.metricview.enabled=truewhen enabledBehavior
When
EnableMetricViewMetadata=true:getTables()andgetTableTypes()will include METRIC_VIEW entriesgetColumns()will return measure columns with<data_type> measureformat in TYPE_NAMEUsage
Testing
All unit tests pass including 2 new tests for this feature.
Backward Compatibility
Feature is disabled by default - fully backward compatible.