BewareMyPower opened a new pull request, #396: URL: https://github.com/apache/pulsar-client-cpp/pull/396
Fixes https://github.com/apache/pulsar-client-cpp/issues/391 ### Motivation When `connectionFailed` is called, no matter if the result is retryable the creation of producer or consumer will fail without retry. ### Modifications Check if the result is retryable in `connectionFailed` for `ProducerImpl` and `ConsumerImpl` and only fail for non-retryable errors or the timeout error. Register another timer in `HandlerBase` to propagate the timeout error to `connectionFailed`. Add `testRetryUntilSucceed`, `testRetryTimeout`, `testNoRetry` to verify client could retry according to the result returned by `ClientImpl::getConnection`. On the other handle, check all `close()` calls in `ClientConnection` and pass the correct result. For example, a handshake error should be retryable so we must call `close(ResultRetryable)`. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
