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

Log warning in rest client response handler #2338

Closed
wants to merge 1 commit into from

Conversation

dreamer-89
Copy link
Member

Signed-off-by: Suraj Singh surajrider@gmail.com

Description

Log warnings in rest client response handler causing test failures. This change is to get insights on warnings which is causing the test failures in gradle check.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@dreamer-89 dreamer-89 requested a review from a team as a code owner March 4, 2022 05:17
@opensearch-ci-bot
Copy link
Collaborator

Can one of the admins verify this patch?

@dreamer-89 dreamer-89 self-assigned this Mar 4, 2022
@dreamer-89 dreamer-89 added the non-issue bugs / unexpected behaviors that end up non issues; audit trail simple changes that aren't issues label Mar 4, 2022
@opensearch-ci-bot
Copy link
Collaborator

❌   Gradle Check failure b4111570b476925c1521a2d9b5cf10a96f7f99a3
Log 3018

Reports 3018

@dblock
Copy link
Member

dblock commented Mar 4, 2022

start gradle check

@opensearch-ci-bot
Copy link
Collaborator

❌   Gradle Check failure b4111570b476925c1521a2d9b5cf10a96f7f99a3
Log 3028

Reports 3028

Copy link
Collaborator

@nknize nknize left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thx!

@nknize
Copy link
Collaborator

nknize commented Mar 4, 2022

@dblock it's going to fail because of #2334 until the PR is rebased...

@nknize
Copy link
Collaborator

nknize commented Mar 4, 2022

Ignore me... still failing w/ fix

@dblock
Copy link
Member

dblock commented Mar 4, 2022

I think we need to rebase this PR to pickup that change and run the check again. @dreamer-89 Care to try?

@nknize
Copy link
Collaborator

nknize commented Mar 4, 2022

Let's wait until #2342 is merged... TranslogPolicyIT should no longer run on 2.0.

@dreamer-89
Copy link
Member Author

Will wait for #2342 to merge before rebasing

@nknize
Copy link
Collaborator

nknize commented Mar 4, 2022

Will wait for #2342 to merge before rebasing

ready for rebase

…ures

Signed-off-by: Suraj Singh <surajrider@gmail.com>
@@ -343,6 +343,7 @@ private ResponseOrResponseException convertResponse(InternalRequest request, Nod
if (isSuccessfulResponse(statusCode) || request.ignoreErrorCodes.contains(response.getStatusLine().getStatusCode())) {
onResponse(node);
if (request.warningsHandler.warningsShouldFailRequest(response.getWarnings())) {
logger.warn(Arrays.toString(response.getWarnings().toArray()));
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

log-and-throw is generally an anti-pattern. We really can't know whether logging is the right thing to do in all contexts for a general purpose client like this, so it is usually better to let whatever handles the exception make the logging decision. In the context of the tests it is definitely a good idea to log these details. Is it possible to handle this exception in the test runner somewhere and log it there?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with @andrross here, wdyt @dreamer-89?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @andrross @dblock for the feedback. Yes, I also agree with @andrross here.

The test recoverReplica directly calls the rest client via parent class OpenSearchRestTestCase method. So, there are couple of options for adding log statement;

  1. Inside parent class OpenSearchRestTestCase
  2. Individual test cases.

#1 seems better option as its minor change and covers all cases.

I think since issue the original issue is fixed in #2334; we can hold onto this change for now ?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Logging these warnings in the parent seems like a good idea to me, unless it creates a huge amount of unnecessary log statements in the test output. If it is a quick and easy change I'd say go ahead and do it. If not, then we can hold off until it is needed in the future.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @andrross for the feedback. The initial failing test seems to be fixed now #2334. I will revive this PR, if I found similar failures as you suggested.

@opensearch-ci-bot
Copy link
Collaborator

✅   Gradle Check success f594302
Log 3039

Reports 3039

Copy link
Member

@dblock dblock left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I went too fast doing a CR, I think I agree with Andrew.

@@ -343,6 +343,7 @@ private ResponseOrResponseException convertResponse(InternalRequest request, Nod
if (isSuccessfulResponse(statusCode) || request.ignoreErrorCodes.contains(response.getStatusLine().getStatusCode())) {
onResponse(node);
if (request.warningsHandler.warningsShouldFailRequest(response.getWarnings())) {
logger.warn(Arrays.toString(response.getWarnings().toArray()));
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with @andrross here, wdyt @dreamer-89?

@andrross
Copy link
Member

@dreamer-89 Can we close out this PR for now?

@dreamer-89
Copy link
Member Author

@dreamer-89 Can we close out this PR for now?

Sure @andrross . Closing this PR as it is not necessary now. The original issue which we wanted to debug is already fixed in #2334

@dreamer-89 dreamer-89 closed this Apr 14, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
non-issue bugs / unexpected behaviors that end up non issues; audit trail simple changes that aren't issues
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants