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: Implement toString for Bigtable*Settings #488

Merged
merged 3 commits into from Oct 23, 2020

Conversation

dmitry-fa
Copy link
Contributor

Example of output from toString():

BigtableInstanceAdminSettings{
projectId=our-project-212, 
createInstanceSettings=UnaryCallSettings{retryableCodes=[], retrySettings=RetrySettings{totalTimeout=PT5M, initialRetryDelay=PT0S, retryDelayMultiplier=1.0, maxRetryDelay=PT0S, maxAttempts=0, jittered=true, 
initialRpcTimeout=PT5M, rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT5M}},
createInstanceOperationSettings=com.google.api.gax.rpc.OperationCallSettings@3796751b,
getInstanceSettings=UnaryCallSettings{retryableCodes=[DEADLINE_EXCEEDED, UNAVAILABLE], retrySettings=RetrySettings{totalTimeout=PT10M, initialRetryDelay=PT1S, retryDelayMultiplier=2.0, maxRetryDelay=PT1M,
maxAttempts=0, jittered=true, initialRpcTimeout=PT1M, rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT1M}},
listInstancesSettings=UnaryCallSettings{retryableCodes=[DEADLINE_EXCEEDED, UNAVAILABLE],
retrySettings=RetrySettings{totalTimeout=PT10M, initialRetryDelay=PT1S, retryDelayMultiplier=2.0, maxRetryDelay=PT1M, 
maxAttempts=0, jittered=true, initialRpcTimeout=PT1M, rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT1M}}, 
partialUpdateInstanceSettings=UnaryCallSettings{retryableCodes=[DEADLINE_EXCEEDED, UNAVAILABLE], 
retrySettings=RetrySettings{totalTimeout=PT10M, initialRetryDelay=PT1S, retryDelayMultiplier=2.0, maxRetryDelay=PT1M, 
maxAttempts=0, jittered=true, initialRpcTimeout=PT1M, rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT1M}}, 
partialUpdateInstanceOperationSettings=com.google.api.gax.rpc.OperationCallSettings@67b64c45, 
deleteInstanceSettings=UnaryCallSettings{retryableCodes=[], retrySettings=RetrySettings{totalTimeout=PT1M, 
initialRetryDelay=PT0S, retryDelayMultiplier=1.0, maxRetryDelay=PT0S, maxAttempts=0, jittered=true, initialRpcTimeout=PT1M, 
rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT1M}}, createClusterSettings=UnaryCallSettings{retryableCodes=[], 
retrySettings=RetrySettings{totalTimeout=PT1M, initialRetryDelay=PT0S, retryDelayMultiplier=1.0, maxRetryDelay=PT0S, 
maxAttempts=0, jittered=true, initialRpcTimeout=PT1M, rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT1M}}, 
createClusterOperationSettings=com.google.api.gax.rpc.OperationCallSettings@4411d970, 
getClusterSettings=UnaryCallSettings{retryableCodes=[DEADLINE_EXCEEDED, UNAVAILABLE], 
retrySettings=RetrySettings{totalTimeout=PT10M, initialRetryDelay=PT1S, retryDelayMultiplier=2.0, maxRetryDelay=PT1M, 
maxAttempts=0, jittered=true, initialRpcTimeout=PT1M, rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT1M}}, 
listClustersSettings=UnaryCallSettings{retryableCodes=[DEADLINE_EXCEEDED, UNAVAILABLE], 
retrySettings=RetrySettings{totalTimeout=PT10M, initialRetryDelay=PT1S, retryDelayMultiplier=2.0, maxRetryDelay=PT1M, 
maxAttempts=0, jittered=true, initialRpcTimeout=PT1M, rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT1M}}, 
updateClusterSettings=UnaryCallSettings{retryableCodes=[DEADLINE_EXCEEDED, UNAVAILABLE], 
retrySettings=RetrySettings{totalTimeout=PT10M, initialRetryDelay=PT1S, retryDelayMultiplier=2.0, maxRetryDelay=PT1M, 
maxAttempts=0, jittered=true, initialRpcTimeout=PT1M, rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT1M}}, 
updateClusterOperationSettings=com.google.api.gax.rpc.OperationCallSettings@6442b0a6, 
deleteClusterSettings=UnaryCallSettings{retryableCodes=[], retrySettings=RetrySettings{totalTimeout=PT1M, 
initialRetryDelay=PT0S, retryDelayMultiplier=1.0, maxRetryDelay=PT0S, maxAttempts=0, jittered=true, initialRpcTimeout=PT1M, 
rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT1M}}, createAppProfileSettings=UnaryCallSettings{retryableCodes=[], 
retrySettings=RetrySettings{totalTimeout=PT1M, initialRetryDelay=PT0S, retryDelayMultiplier=1.0, maxRetryDelay=PT0S, 
maxAttempts=0, jittered=true, initialRpcTimeout=PT1M, rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT1M}}, 
getAppProfileSettings=UnaryCallSettings{retryableCodes=[DEADLINE_EXCEEDED, UNAVAILABLE], 
retrySettings=RetrySettings{totalTimeout=PT10M, initialRetryDelay=PT1S, retryDelayMultiplier=2.0, maxRetryDelay=PT1M, 
maxAttempts=0, jittered=true, initialRpcTimeout=PT1M, rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT1M}}, 
listAppProfilesSettings=PagedCallSettings{retryableCodes=[DEADLINE_EXCEEDED, UNAVAILABLE], 
retrySettings=RetrySettings{totalTimeout=PT10M, initialRetryDelay=PT1S, retryDelayMultiplier=2.0, maxRetryDelay=PT1M, 
maxAttempts=0, jittered=true, initialRpcTimeout=PT1M, rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT1M}}, 
updateAppProfileSettings=UnaryCallSettings{retryableCodes=[DEADLINE_EXCEEDED, UNAVAILABLE], 
retrySettings=RetrySettings{totalTimeout=PT10M, initialRetryDelay=PT1S, retryDelayMultiplier=2.0, maxRetryDelay=PT1M, 
maxAttempts=0, jittered=true, initialRpcTimeout=PT1M, rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT1M}}, 
updateAppProfileOperationSettings=com.google.api.gax.rpc.OperationCallSettings@60f82f98, 
deleteAppProfileSettings=UnaryCallSettings{retryableCodes=[], retrySettings=RetrySettings{totalTimeout=PT1M, 
initialRetryDelay=PT0S, retryDelayMultiplier=1.0, maxRetryDelay=PT0S, maxAttempts=0, jittered=true, initialRpcTimeout=PT1M, 
rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT1M}}, getIamPolicySettings=UnaryCallSettings{retryableCodes=
[DEADLINE_EXCEEDED, UNAVAILABLE], retrySettings=RetrySettings{totalTimeout=PT10M, initialRetryDelay=PT1S, 
retryDelayMultiplier=2.0, maxRetryDelay=PT1M, maxAttempts=0, jittered=true, initialRpcTimeout=PT1M, 
rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT1M}}, setIamPolicySettings=UnaryCallSettings{retryableCodes=[], 
retrySettings=RetrySettings{totalTimeout=PT1M, initialRetryDelay=PT0S, retryDelayMultiplier=1.0, maxRetryDelay=PT0S, 
maxAttempts=0, jittered=true, initialRpcTimeout=PT1M, rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT1M}}, 
testIamPermissionsSettings=UnaryCallSettings{retryableCodes=[DEADLINE_EXCEEDED, UNAVAILABLE], 
retrySettings=RetrySettings{totalTimeout=PT10M, initialRetryDelay=PT1S, retryDelayMultiplier=2.0, maxRetryDelay=PT1M, 
maxAttempts=0, jittered=true, initialRpcTimeout=PT1M, rpcTimeoutMultiplier=1.0, maxRpcTimeout=PT1M}}, 
stubSettings=BigtableInstanceAdminStubSettings{executorProvider=InstantiatingExecutorProvider{executorThreadCount=4, 
threadFactory=com.google.api.gax.core.InstantiatingExecutorProvider$1@35f983a6}, 
transportChannelProvider=com.google.api.gax.grpc.InstantiatingGrpcChannelProvider@7f690630, 
credentialsProvider=GoogleCredentialsProvider{scopesToApply=[https://www.googleapis.com/auth/bigtable.admin, 
https://www.googleapis.com/auth/bigtable.admin.cluster, https://www.googleapis.com/auth/bigtable.admin.instance, 
https://www.googleapis.com/auth/bigtable.admin.table, https://www.googleapis.com/auth/cloud-bigtable.admin, 
https://www.googleapis.com/auth/cloud-bigtable.admin.cluster, https://www.googleapis.com/auth/cloud-bigtable.admin.table, 
https://www.googleapis.com/auth/cloud-platform, https://www.googleapis.com/auth/cloud-platform.read-only], 
jwtEnabledScopes=[], OAuth2Credentials=null}, headerProvider=com.google.api.gax.rpc.NoHeaderProvider@edf4efb, 
internalHeaderProvider=com.google.api.gax.rpc.ApiClientHeaderProvider@2f7a2457, 
clock=com.google.api.core.NanoClock@566776ad, endpoint=bigtableadmin.googleapis.com:443, quotaProjectId=null, 
streamWatchdogProvider=com.google.api.gax.rpc.InstantiatingWatchdogProvider@6108b2d7, 
streamWatchdogCheckInterval=PT10S, tracerFactory=com.google.api.gax.tracing.NoopApiTracerFactory@1554909b}}

Fixes #233

@dmitry-fa dmitry-fa requested a review from a team as a code owner October 22, 2020 11:27
@google-cla google-cla bot added the cla: yes This human has signed the Contributor License Agreement. label Oct 22, 2020
@codecov
Copy link

codecov bot commented Oct 22, 2020

Codecov Report

Merging #488 into master will increase coverage by 0.19%.
The diff coverage is 100.00%.

Impacted file tree graph

@@             Coverage Diff              @@
##             master     #488      +/-   ##
============================================
+ Coverage     81.11%   81.31%   +0.19%     
- Complexity     1124     1128       +4     
============================================
  Files           106      106              
  Lines          6965     7042      +77     
  Branches        368      368              
============================================
+ Hits           5650     5726      +76     
- Misses         1117     1119       +2     
+ Partials        198      197       -1     
Impacted Files Coverage Δ Complexity Δ
...gtable/admin/v2/BigtableInstanceAdminSettings.java 98.24% <100.00%> (+1.69%) 7.00 <1.00> (+1.00)
.../bigtable/admin/v2/BigtableTableAdminSettings.java 77.01% <100.00%> (+13.37%) 9.00 <1.00> (+1.00)
...e/cloud/bigtable/data/v2/BigtableDataSettings.java 71.83% <100.00%> (+0.40%) 8.00 <1.00> (+1.00)
...ble/data/v2/stub/EnhancedBigtableStubSettings.java 97.60% <100.00%> (+0.16%) 22.00 <1.00> (+1.00)
...om/google/cloud/bigtable/emulator/v2/Emulator.java 59.83% <0.00%> (-0.82%) 14.00% <0.00%> (ø%)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update fc74164...c4aec8f. Read the comment docs.

@igorbernstein2
Copy link
Contributor

This looks mostly good. As a follow up, can you open a PR in gax to add meaningful toString impl for:

  • InstantiatingExecutorProvider
  • OperationCallSettings
  • InstantiatingGrpcChannelProvider
  • NoHeaderProvider
  • InstantiatingWatchdogProvider
  • etc

@dmitry-fa
Copy link
Contributor Author

@igorbernstein2 the issue filed: googleapis/gax-java#1228

@igorbernstein2
Copy link
Contributor

Please rebase and I'll merge the PR

@product-auto-label product-auto-label bot added the api: bigtable Issues related to the googleapis/java-bigtable API. label Oct 23, 2020
# Conflicts:
#	google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/EnhancedBigtableStubSettingsTest.java
@dmitry-fa
Copy link
Contributor Author

Please rebase and I'll merge the PR

done

@kolea2 kolea2 dismissed their stale review October 23, 2020 16:27

dismissed

@igorbernstein2 igorbernstein2 merged commit 4d821f8 into googleapis:master Oct 23, 2020
gcf-merge-on-green bot pushed a commit that referenced this pull request Oct 23, 2020
🤖 I have created a release \*beep\* \*boop\* 
---
## [1.17.0](https://www.github.com/googleapis/java-bigtable/compare/v1.16.2...v1.17.0) (2020-10-23)


### Features

* attemp DirectPath by default ([#467](https://www.github.com/googleapis/java-bigtable/issues/467)) ([89c622d](https://www.github.com/googleapis/java-bigtable/commit/89c622da6038067892687af3edafae743465eda7))
* backup level IAM ([#450](https://www.github.com/googleapis/java-bigtable/issues/450)) ([f38a8ec](https://www.github.com/googleapis/java-bigtable/commit/f38a8ecdc6164d081ef96f748ea37bd62b29b419))
* Implement toString for Bigtable*Settings ([#488](https://www.github.com/googleapis/java-bigtable/issues/488)) ([4d821f8](https://www.github.com/googleapis/java-bigtable/commit/4d821f85ceb237c8e449243ff8c80fb94e22ad51))


### Bug Fixes

* Make refreshing channel compatible with BigtableDataClientFactory ([#474](https://www.github.com/googleapis/java-bigtable/issues/474)) ([fc74164](https://www.github.com/googleapis/java-bigtable/commit/fc741645536e01fac772136bc8346f73ff95e600))


### Documentation

* fix formatting ([#476](https://www.github.com/googleapis/java-bigtable/issues/476)) ([eb24569](https://www.github.com/googleapis/java-bigtable/commit/eb24569e53f9d2b7fde50748c840c2c11f3f3c80))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.12.1 ([#475](https://www.github.com/googleapis/java-bigtable/issues/475)) ([9e56edf](https://www.github.com/googleapis/java-bigtable/commit/9e56edfa7b0a78f14518a99130a7b319c5873be4))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.13.0 ([#484](https://www.github.com/googleapis/java-bigtable/issues/484)) ([aad648f](https://www.github.com/googleapis/java-bigtable/commit/aad648fec16b122092d394350822da742a2d7aa0))
* update dependency com.google.truth:truth to v1.1 ([#483](https://www.github.com/googleapis/java-bigtable/issues/483)) ([cca1e0e](https://www.github.com/googleapis/java-bigtable/commit/cca1e0e16f2ec0cc887d81c1844f5395ce08b6ea))
---


This PR was generated with [Release Please](https://github.com/googleapis/release-please).
ad548 pushed a commit to ad548/java-bigtable that referenced this pull request Mar 13, 2021
* test: Refactor tests to extract common setup logic

* test: minor fix
ad548 pushed a commit to ad548/java-bigtable that referenced this pull request Mar 13, 2021
🤖 I have created a release \*beep\* \*boop\* 
---
## [1.17.0](https://www.github.com/googleapis/java-bigtable/compare/v1.16.2...v1.17.0) (2020-10-23)


### Features

* attemp DirectPath by default ([googleapis#467](https://www.github.com/googleapis/java-bigtable/issues/467)) ([89c622d](https://www.github.com/googleapis/java-bigtable/commit/89c622da6038067892687af3edafae743465eda7))
* backup level IAM ([googleapis#450](https://www.github.com/googleapis/java-bigtable/issues/450)) ([f38a8ec](https://www.github.com/googleapis/java-bigtable/commit/f38a8ecdc6164d081ef96f748ea37bd62b29b419))
* Implement toString for Bigtable*Settings ([googleapis#488](https://www.github.com/googleapis/java-bigtable/issues/488)) ([4d821f8](https://www.github.com/googleapis/java-bigtable/commit/4d821f85ceb237c8e449243ff8c80fb94e22ad51))


### Bug Fixes

* Make refreshing channel compatible with BigtableDataClientFactory ([googleapis#474](https://www.github.com/googleapis/java-bigtable/issues/474)) ([fc74164](https://www.github.com/googleapis/java-bigtable/commit/fc741645536e01fac772136bc8346f73ff95e600))


### Documentation

* fix formatting ([googleapis#476](https://www.github.com/googleapis/java-bigtable/issues/476)) ([eb24569](https://www.github.com/googleapis/java-bigtable/commit/eb24569e53f9d2b7fde50748c840c2c11f3f3c80))


### Dependencies

* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.12.1 ([googleapis#475](https://www.github.com/googleapis/java-bigtable/issues/475)) ([9e56edf](https://www.github.com/googleapis/java-bigtable/commit/9e56edfa7b0a78f14518a99130a7b319c5873be4))
* update dependency com.google.cloud:google-cloud-shared-dependencies to v0.13.0 ([googleapis#484](https://www.github.com/googleapis/java-bigtable/issues/484)) ([aad648f](https://www.github.com/googleapis/java-bigtable/commit/aad648fec16b122092d394350822da742a2d7aa0))
* update dependency com.google.truth:truth to v1.1 ([googleapis#483](https://www.github.com/googleapis/java-bigtable/issues/483)) ([cca1e0e](https://www.github.com/googleapis/java-bigtable/commit/cca1e0e16f2ec0cc887d81c1844f5395ce08b6ea))
---


This PR was generated with [Release Please](https://github.com/googleapis/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. cla: yes This human has signed the Contributor License Agreement.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Implement toString for Bigtable*Settings
3 participants