Skip to content

Conversation

@lqiu96
Copy link
Member

@lqiu96 lqiu96 commented Dec 8, 2025

See b/447623336 for more information.

Add supports for converting picosecond timestamp values to a protobuf type. This changes the type from int64 to string as int64 cannot properly hold picosecond numeric values.

BQ Microsecond Timestamp supports int64, BQ Picosecond Timestamp supports String in ISO8601 format

Notably, this does not support automatic conversion of JSON object to Protobuf message. Users will need manually manage their protobuf schema for this case. Only conversion from JSON string (timestamp) to Protobuf string is supported

@product-auto-label product-auto-label bot added size: m Pull request size is medium. api: bigquerystorage Issues related to the googleapis/java-bigquerystorage API. labels Dec 8, 2025
@lqiu96 lqiu96 changed the title Timestamp to string feat: Add picosecond timestamp support for Json to Proto converter Dec 8, 2025
@product-auto-label product-auto-label bot added size: l Pull request size is large. and removed size: m Pull request size is medium. labels Dec 9, 2025
@lqiu96 lqiu96 requested a review from jinseopkim0 December 9, 2025 19:13
Copy link
Contributor

Choose a reason for hiding this comment

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

Could we add unit tests for the new changes?

@lqiu96 lqiu96 requested a review from jinseopkim0 December 9, 2025 22:34
@lqiu96 lqiu96 marked this pull request as ready for review December 9, 2025 22:36
@lqiu96 lqiu96 requested review from a team as code owners December 9, 2025 22:36
@generated-files-bot
Copy link

Warning: This pull request is touching the following templated files:

  • samples/snapshot/pom.xml
@lqiu96 lqiu96 force-pushed the timestamp-to-string branch from a9ecdf2 to 6f3f4c6 Compare December 9, 2025 22:38
@lqiu96
Copy link
Member Author

lqiu96 commented Dec 10, 2025

/gemini review

@jinseopkim0
Copy link
Contributor

There are some test failures:

Error: Failures: Error: BQTableSchemaToProtoDescriptorTest.testStructComplex:357->isDescriptorEqual:69 expected:<31> but was:<33> 

Could you please take a look?

@lqiu96 lqiu96 requested a review from jinseopkim0 December 10, 2025 19:04
@lqiu96 lqiu96 added the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Dec 10, 2025
@yoshi-kokoro yoshi-kokoro removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Dec 10, 2025
@lqiu96 lqiu96 requested a review from jinseopkim0 December 10, 2025 20:20
@lqiu96 lqiu96 merged commit ea1bcc5 into main Dec 10, 2025
26 checks passed
@lqiu96 lqiu96 deleted the timestamp-to-string branch December 10, 2025 20:53
blakeli0 added a commit that referenced this pull request Dec 13, 2025
* chore: add release-please config for protobuf-4.x (#3125) * chore: add release-please config for protobuf-4.x * Change release type from java-backport to java-yoshi * chore(main): release 3.18.1-SNAPSHOT (#3123) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> * feat: Add picosecond timestamp support for Json to Proto converter (#3131) * feat: Add picosecond timestamp support for Json to Proto converter * chore: Add edge cases for user input * chore: Fix lint issues * chore: Disable check for v1beta2 * chore: generate libraries at Wed Dec 10 15:59:07 UTC 2025 * chore: Address PR feedback * chore: generate libraries at Wed Dec 10 19:01:14 UTC 2025 * chore: Fix timestamp precision check condition --------- Co-authored-by: cloud-java-bot <cloud-java-bot@google.com> * deps: update dependency com.google.cloud:sdk-platform-java-config to v3.54.2 (#3137) * deps: update googleapis/sdk-platform-java action to v2.64.2 (#3138) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [googleapis/sdk-platform-java](https://redirect.github.com/googleapis/sdk-platform-java) | action | patch | `v2.64.1` -> `v2.64.2` | --- ### Release Notes <details> <summary>googleapis/sdk-platform-java (googleapis/sdk-platform-java)</summary> ### [`v2.64.2`](https://redirect.github.com/googleapis/sdk-platform-java/releases/tag/v2.64.2) [Compare Source](https://redirect.github.com/googleapis/sdk-platform-java/compare/v2.64.1...v2.64.2) ##### Bug Fixes - add per-service api\_version to gapic\_metadata ([#&#8203;3984](https://redirect.github.com/googleapis/sdk-platform-java/issues/3984)) ([d589306](https://redirect.github.com/googleapis/sdk-platform-java/commit/d589306c4ecc12a2a744cb9dfb914ccea8fb34fd)) ##### Dependencies - Upgrade auth to 1.41.0. ([#&#8203;4008](https://redirect.github.com/googleapis/sdk-platform-java/issues/4008)) ([833b3e5](https://redirect.github.com/googleapis/sdk-platform-java/commit/833b3e54c0f13ac8183a639c4464dcf58fd44096)) - upgrade grpc to 1.76.1 ([#&#8203;3993](https://redirect.github.com/googleapis/sdk-platform-java/issues/3993)) ([958611e](https://redirect.github.com/googleapis/sdk-platform-java/commit/958611e23460dba596160f3224d8588afdba6bc2)) - Upgrade grpc to 1.76.2 ([#&#8203;4006](https://redirect.github.com/googleapis/sdk-platform-java/issues/4006)) ([a8060a2](https://redirect.github.com/googleapis/sdk-platform-java/commit/a8060a263ba34556b8d4d347a57625849a6859bc)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/googleapis/java-bigquerystorage). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi40Mi4yIiwidXBkYXRlZEluVmVyIjoiNDIuNDIuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> * chore: Remove PR rate limit in renovate.json (#3136) * test: Close resources after tests run (#3139) * test: Close resources after tests run * chore: generate libraries at Thu Dec 11 21:24:33 UTC 2025 * chore: Fix failing IT test case --------- Co-authored-by: cloud-java-bot <cloud-java-bot@google.com> * chore(main): release 3.19.0 (#3135) * chore(main): release 3.19.0 * chore: generate libraries at Fri Dec 12 01:49:55 UTC 2025 --------- Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> Co-authored-by: cloud-java-bot <cloud-java-bot@google.com> Co-authored-by: Blake Li <blakeli@google.com> * chore(main): release 3.19.1-SNAPSHOT (#3149) :robot: I have created a release *beep* *boop* --- ### Updating meta-information for bleeding-edge SNAPSHOT release. --- This PR was generated with [Release Please](https://togithub.com/googleapis/release-please). See [documentation](https://togithub.com/googleapis/release-please#release-please). --------- Co-authored-by: Diego Marquez <diegomarquezp@google.com> Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> Co-authored-by: Lawrence Qiu <lawrenceqiu@google.com> Co-authored-by: cloud-java-bot <cloud-java-bot@google.com> Co-authored-by: Mend Renovate <bot@renovateapp.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

api: bigquerystorage Issues related to the googleapis/java-bigquerystorage API. size: l Pull request size is large.

4 participants