-
Notifications
You must be signed in to change notification settings - Fork 373
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
feat(spanner): support "data boost" on partitioned queries and reads #10998
Conversation
Setting the `spanner::PartitionDataBoostOption` on a `PartitionRead()` or `PartitionQuery()` will result in the respective partitioned `Read()` and `ExecuteQuery()` requests being executed via Spanner independent compute resources.
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## main #10998 +/- ##
==========================================
- Coverage 93.65% 93.65% -0.01%
==========================================
Files 1722 1722
Lines 154955 155037 +82
==========================================
+ Hits 145120 145196 +76
- Misses 9835 9841 +6
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
The `QueryPartition` and `ReadPartition` constructors are private. The extensions to the `Connection::ReadParams`, `Connection::SqlParams`, and `PartitionOptions` structs are backwards-compatible.
@@ -54,11 +54,20 @@ struct PartitionOptions { | |||
* returned may be smaller or larger than this maximum count request. | |||
*/ | |||
absl::optional<std::int64_t> max_partitions; | |||
|
|||
/** |
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.
Are we planning to deprecate these *Options
classes? I don't mean remove, I mean just stop recommending them. If so, we should stop adding features to them. Probably a topic for future discussion.
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.
We have kind-of deprecated them in the Client
API, in as much as those interfaces are marked as only for backwards compatibility, and we encouraged users to migrate away in a changelog note.
However, they are still used in the Connection
API, so they're not really deprecated individually, and we still depend on them being able to carry new data. I don't believe we have any plans to change that.
Pick up `spanner.v1.{ExecuteSql,Read}Request.data_boost_enabled` tag fixes, which obviates any need to revert googleapis#10998 before the next release.
Pick up `spanner.v1.{ExecuteSql,Read}Request.data_boost_enabled` tag fixes, which obviates any need to revert #10998 before the next release.
Setting the
spanner::PartitionDataBoostOption
on aPartitionRead()
orPartitionQuery()
will result in the respective partitionedRead()
andExecuteQuery()
requests being executed via Spanner independent compute resources.This change is