Skip to content
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(bigtable): Add support for data APIs for materialized views #2508

Merged
merged 5 commits into from
Mar 11, 2025

Conversation

ron-gal
Copy link
Contributor

@ron-gal ron-gal commented Mar 10, 2025

Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly:

  • Make sure to open an issue as a bug/issue before writing your code! That way we can discuss the change, evaluate designs, and agree on the general idea
  • Ensure the tests and linter pass
  • Code coverage does not decrease (if any source code was changed)
  • Appropriate docs were updated (if necessary)
  • Rollback plan is reviewed and LGTMed
  • All new data plane features have a completed end to end testing plan

Fixes #<issue_number_goes_here> ☕️

If you write sample code, please follow the samples format.

Sorry, something went wrong.

@ron-gal ron-gal requested review from a team as code owners March 10, 2025 19:31
@product-auto-label product-auto-label bot added size: l Pull request size is large. api: bigtable Issues related to the googleapis/java-bigtable API. labels Mar 10, 2025
@andre-sampaio
Copy link
Contributor

/gcbrun

@andre-sampaio andre-sampaio added the kokoro:run Add this label to force Kokoro to re-run the tests. label Mar 11, 2025
@yoshi-kokoro yoshi-kokoro removed the kokoro:run Add this label to force Kokoro to re-run the tests. label Mar 11, 2025
BulkMutation bulkMutation =
BulkMutation.create(NameUtil.extractTargetId(tableName, authorizedViewName));
BulkMutation.create(NameUtil.extractTargetId(tableName, authorizedViewName, ""));
Copy link
Contributor

Choose a reason for hiding this comment

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

Since we have a very clear scenario for which it never makes sense to pass the third parameter (any kind of mutation), maybe create an overload for extractTargetId with only the first 2 parameters

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Good idea, done!

@ron-gal ron-gal requested a review from andre-sampaio March 11, 2025 19:52
return matcher.group(3);
}

/** A helper to convert fully qualified tableName andauthorizedViewName to a {@link TargetId} */
public static TargetId extractTargetId(
Copy link
Contributor

Choose a reason for hiding this comment

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

Now this overload can just proxy the request to the other one so we don't have the logic duplicated

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done

@andre-sampaio
Copy link
Contributor

Regarding the clirr error, you can add the interface here: google-cloud-bigtable/clirr-ignored-differences.xml

That's a check for possible breaking changes, but we consider TargetId an internal entity, so it is ok to break compatibility here

@ron-gal ron-gal requested a review from a team as a code owner March 11, 2025 20:20
@ron-gal
Copy link
Contributor Author

ron-gal commented Mar 11, 2025

Regarding the clirr error, you can add the interface here: google-cloud-bigtable/clirr-ignored-differences.xml

That's a check for possible breaking changes, but we consider TargetId an internal entity, so it is ok to break compatibility here

Done

@ron-gal ron-gal requested a review from andre-sampaio March 11, 2025 20:20
@andre-sampaio
Copy link
Contributor

/gcbrun

@andre-sampaio andre-sampaio added the kokoro:run Add this label to force Kokoro to re-run the tests. label Mar 11, 2025
@andre-sampaio andre-sampaio added automerge Merge the pull request once unit tests and other checks pass. and removed automerge Merge the pull request once unit tests and other checks pass. labels Mar 11, 2025
@gcf-merge-on-green gcf-merge-on-green bot merged commit 6310a63 into googleapis:main Mar 11, 2025
20 checks passed
@gcf-merge-on-green gcf-merge-on-green bot removed the automerge Merge the pull request once unit tests and other checks pass. label Mar 11, 2025
@ron-gal ron-gal deleted the mv_support branch March 11, 2025 23:42
gcf-merge-on-green bot pushed a commit that referenced this pull request Mar 12, 2025

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
🤖 I have created a release *beep* *boop*
---


## [2.55.0](https://togithub.com/googleapis/java-bigtable/compare/v2.54.0...v2.55.0) (2025-03-11)


### Features

* Add MaterializedViewName to ReadRows and SampleRowKeys ([1763c6e](https://togithub.com/googleapis/java-bigtable/commit/1763c6e9304010ed4034e1ddd03fdb94bca615dc))
* Add MaterializedViews and LogicalViews APIs ([1763c6e](https://togithub.com/googleapis/java-bigtable/commit/1763c6e9304010ed4034e1ddd03fdb94bca615dc))
* Add MaterializedViews and LogicalViews APIs ([7340527](https://togithub.com/googleapis/java-bigtable/commit/73405272c3fc77ca81c1df7cce1b8d889d4a96c4))
* Add PrepareQuery api and update ExecuteQuery to support it ([1763c6e](https://togithub.com/googleapis/java-bigtable/commit/1763c6e9304010ed4034e1ddd03fdb94bca615dc))
* **bigtable:** Add support for data APIs for materialized views ([#2508](https://togithub.com/googleapis/java-bigtable/issues/2508)) ([6310a63](https://togithub.com/googleapis/java-bigtable/commit/6310a631be3345f97d73b50f3b458fe40b071286))
* **large-row-skip:** Added large-row-skip-callable with configurable rowadapter ([#2509](https://togithub.com/googleapis/java-bigtable/issues/2509)) ([ba193ef](https://togithub.com/googleapis/java-bigtable/commit/ba193ef771f913e6e6a1aca630fe52d0921ee077))
* Next release from main branch is 2.55.0 ([#2506](https://togithub.com/googleapis/java-bigtable/issues/2506)) ([4e45837](https://togithub.com/googleapis/java-bigtable/commit/4e458378cc25a4dc5ac3fd1362626d89f0138186))
* Publish row_key_schema fields in table proto and relevant admin APIs to setup a table with a row_key_schema ([7340527](https://togithub.com/googleapis/java-bigtable/commit/73405272c3fc77ca81c1df7cce1b8d889d4a96c4))


### Bug Fixes

* **deps:** Update the Java code generator (gapic-generator-java) to 2.54.0 ([91e4369](https://togithub.com/googleapis/java-bigtable/commit/91e4369d280c09fd2d1b4b5dd88809b6da01b0f8))


### Documentation

* Fixed formatting of resource path strings ([7340527](https://togithub.com/googleapis/java-bigtable/commit/73405272c3fc77ca81c1df7cce1b8d889d4a96c4))

---
This PR was generated with [Release Please](https://togithub.com/googleapis/release-please). See [documentation](https://togithub.com/googleapis/release-please#release-please).
andre-sampaio pushed a commit that referenced this pull request Mar 19, 2025
Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly:
- [x] Make sure to open an issue as a [bug/issue](https://togithub.com/googleapis/java-bigtable/issues/new/choose) before writing your code!  That way we can discuss the change, evaluate designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Rollback plan is reviewed and LGTMed
- [x] All new data plane features have a completed end to end testing plan

Fixes #<issue_number_goes_here> ☕️

If you write sample code, please follow the [samples format](
https://togithub.com/GoogleCloudPlatform/java-docs-samples/blob/main/SAMPLE_FORMAT.md).
andre-sampaio pushed a commit that referenced this pull request Mar 19, 2025
🤖 I have created a release *beep* *boop*
---


## [2.55.0](https://togithub.com/googleapis/java-bigtable/compare/v2.54.0...v2.55.0) (2025-03-11)


### Features

* Add MaterializedViewName to ReadRows and SampleRowKeys ([1763c6e](https://togithub.com/googleapis/java-bigtable/commit/1763c6e9304010ed4034e1ddd03fdb94bca615dc))
* Add MaterializedViews and LogicalViews APIs ([1763c6e](https://togithub.com/googleapis/java-bigtable/commit/1763c6e9304010ed4034e1ddd03fdb94bca615dc))
* Add MaterializedViews and LogicalViews APIs ([7340527](https://togithub.com/googleapis/java-bigtable/commit/73405272c3fc77ca81c1df7cce1b8d889d4a96c4))
* Add PrepareQuery api and update ExecuteQuery to support it ([1763c6e](https://togithub.com/googleapis/java-bigtable/commit/1763c6e9304010ed4034e1ddd03fdb94bca615dc))
* **bigtable:** Add support for data APIs for materialized views ([#2508](https://togithub.com/googleapis/java-bigtable/issues/2508)) ([6310a63](https://togithub.com/googleapis/java-bigtable/commit/6310a631be3345f97d73b50f3b458fe40b071286))
* **large-row-skip:** Added large-row-skip-callable with configurable rowadapter ([#2509](https://togithub.com/googleapis/java-bigtable/issues/2509)) ([ba193ef](https://togithub.com/googleapis/java-bigtable/commit/ba193ef771f913e6e6a1aca630fe52d0921ee077))
* Next release from main branch is 2.55.0 ([#2506](https://togithub.com/googleapis/java-bigtable/issues/2506)) ([4e45837](https://togithub.com/googleapis/java-bigtable/commit/4e458378cc25a4dc5ac3fd1362626d89f0138186))
* Publish row_key_schema fields in table proto and relevant admin APIs to setup a table with a row_key_schema ([7340527](https://togithub.com/googleapis/java-bigtable/commit/73405272c3fc77ca81c1df7cce1b8d889d4a96c4))


### Bug Fixes

* **deps:** Update the Java code generator (gapic-generator-java) to 2.54.0 ([91e4369](https://togithub.com/googleapis/java-bigtable/commit/91e4369d280c09fd2d1b4b5dd88809b6da01b0f8))


### Documentation

* Fixed formatting of resource path strings ([7340527](https://togithub.com/googleapis/java-bigtable/commit/73405272c3fc77ca81c1df7cce1b8d889d4a96c4))

---
This PR was generated with [Release Please](https://togithub.com/googleapis/release-please). See [documentation](https://togithub.com/googleapis/release-please#release-please).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api: bigtable Issues related to the googleapis/java-bigtable API. kokoro:run Add this label to force Kokoro to re-run the tests. size: l Pull request size is large.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants