THRIFT-5670: lib: cpp: Fix wrong timeout error message #2732
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We've seen a strange timeout error message like this:
The log comes from this line:
GlobalOutput.perror("TSocket::read() THRIFT_EAGAIN (timed out) after %f ms", recvTimeout_);
The second argument of GlobalOutput.perror() is an errno. We should not use
recvTimeout_
on it:thrift/lib/cpp/src/thrift/TOutput.h
Line 40 in a2a1f53
The implementation of perror():
It converts the errno to the error string, and 30000 is an unknown errno.
What we want is to print the timeout threshold. We should use
GlobalOutput.printf()
instead.This PR fixes the wrong usage of
GlobalOutput.perror()
. The error message will be[skip ci]
anywhere in the commit message to free up build resources.