googleapis / googleapis/google-cloud-java
Exceptions created by FlowController don't provide getMessage method implementations
- Dominant language
- Java
- Stars
- 2.1k
- Forks
- 1.2k
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 154
Description
Standard Java convention for exception messages is:
- getMessage() → returns the raw detail message
- toString() → returns ClassName: getMessage()
FlowController creates exceptions without implementing getMessage() or calling super(msg) in its constructors. Consequently, getMessage() returns null.
When logging framework uses getMessage() to render the output you will get very limited text representation.
For example:
```
com.google.api.gax.batching.FlowController$MaxOutstandingRequestBytesReachedException: null
at com.google.cloud.pubsub.v1.Publisher$MessageFlowController.acquire(Publisher.java:1019)
at com.google.cloud.pubsub.v1.Publisher.publish(Publisher.java:297)
```
Contributor guide
Assessment
This issue has not been assessed yet.