Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: googleapis/java-bigtable
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v2.76.0
Choose a base ref
...
head repository: googleapis/java-bigtable
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v2.77.0
Choose a head ref
  • 9 commits
  • 287 files changed
  • 5 contributors

Commits on Apr 9, 2026

  1. chore(main): release 2.76.1-SNAPSHOT (#2866)

    Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
    release-please[bot] authored Apr 9, 2026
    Configuration menu
    Copy the full SHA
    29db0f2 View commit details
    Browse the repository at this point in the history
  2. feat: add new session based protocol stack (#2862)

    The new protocol changes the paradigm of bigtable service from an RPC server where each operation is independent to more of a file like model where a table is opened and allows many read & write operations. This will have a significant impact on lowering latencies. All of the changes are internal to the client and the existing public surface remains the same. By default the new protocol is disabled and will be slowly enabled in the future using the client config api.
    
    Notable changes:
    - When the new protocol is enabled, the BigtableClientFactory doesnt share the underlying ChannelPool. The new ChannelPool is tracks the connected server, so sharing a channel between multiple resource is no longer possible. 
    - The new protocol does not support custom TransportProviders, setting one will force a fallback to the classic protocol
    - Retries have been revamped: 
       - the client now tracks how far an rpc went which allows the client to retry non-idempotent rpcs safely
       - attempt timeouts are no longer relevant, they have been replaced with heartbeats
       - Mutations that are not idempotent (have serverside timestamps or counters) are now correctly identified and will be retried if they left the client
    - The new transport supports the ambient grpc Context and will consistently respect the ambient deadlines and cancellation
    - Customers can opt out of the slow rollout by setting the env var `CBT_DISABLE_SESSIONS=true`
    igorbernstein2 authored Apr 9, 2026
    Configuration menu
    Copy the full SHA
    d5565b5 View commit details
    Browse the repository at this point in the history
  3. chore: implement leastlatency LB with Peak EWMA (#2869)

    * chore: implement leastlatency LB with Peak EWMA
    
    Other changes
    - Hook up subset size settings
    - Increase PeakEwma decay - AFE latency is very noisy so we need a long duration to discern which AFEs genuinely perform better
    
    Change-Id: I138501487d4dec53aa80e18785023bcbfaa06807
    
    * fix: handling default handling where subsetSize = 0 means the entire pool
    
    Change-Id: Ifb6c293e355d337d457d3b76efe4e21924f80f81
    
    ---------
    
    Co-authored-by: Neil <[email protected]>
    igorbernstein2 and neilw4 authored Apr 9, 2026
    Configuration menu
    Copy the full SHA
    6e17eeb View commit details
    Browse the repository at this point in the history
  4. test: deflake goaway test to account for last vRpc being rejected (#2870

    )
    
    Change-Id: Ife308c3cd8dd693909cdd9af4f02a9ec63c16071
    
    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](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
    - [ ] 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](
    https://togithub.com/GoogleCloudPlatform/java-docs-samples/blob/main/SAMPLE_FORMAT.md).
    igorbernstein2 authored Apr 9, 2026
    Configuration menu
    Copy the full SHA
    b724bfa View commit details
    Browse the repository at this point in the history
  5. chore: regen admin (#2871)

    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](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
    - [ ] 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](
    https://togithub.com/GoogleCloudPlatform/java-docs-samples/blob/main/SAMPLE_FORMAT.md).
    mutianf authored Apr 9, 2026
    Configuration menu
    Copy the full SHA
    69f2b48 View commit details
    Browse the repository at this point in the history
  6. chore: increase severity of session creation exhaustion debug tag (#2868

    )
    
    Change-Id: I1a4f684c2cb939fbf1e1ec4705e360bfaeeb4a46
    
    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](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
    - [ ] 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](
    https://togithub.com/GoogleCloudPlatform/java-docs-samples/blob/main/SAMPLE_FORMAT.md).
    igorbernstein2 authored Apr 9, 2026
    Configuration menu
    Copy the full SHA
    02b2821 View commit details
    Browse the repository at this point in the history
  7. test: deflake heartbeat test (#2873)

    Change-Id: I658e256a8b9572efb4f0ed043bd2ea5bfd496ea9
    mutianf authored Apr 9, 2026
    Configuration menu
    Copy the full SHA
    d41c775 View commit details
    Browse the repository at this point in the history
  8. chore: add a system property for DirectAccess enablement (#2872)

    This is needed for internal tooling to configure DirectAccess state in process
    
    Change-Id: I3ce30b04c7b57ec0f7019145aa90c7972cce7752
    
    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](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
    - [ ] 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](
    https://togithub.com/GoogleCloudPlatform/java-docs-samples/blob/main/SAMPLE_FORMAT.md).
    igorbernstein2 authored Apr 9, 2026
    Configuration menu
    Copy the full SHA
    b01e8ec View commit details
    Browse the repository at this point in the history
  9. chore(main): release 2.77.0 (#2867)

    * chore(main): release 2.77.0
    
    * chore: generate libraries at Thu Apr  9 12:29:54 UTC 2026
    
    * chore: generate libraries at Thu Apr  9 18:52:53 UTC 2026
    
    ---------
    
    Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
    Co-authored-by: cloud-java-bot <[email protected]>
    Co-authored-by: Igor Bernstein <[email protected]>
    3 people authored Apr 9, 2026
    Configuration menu
    Copy the full SHA
    6817ff6 View commit details
    Browse the repository at this point in the history
Loading