-
Notifications
You must be signed in to change notification settings - Fork 276
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
[Test Fix #3424] PointInTimeOperationTest.listAllPits_positive #3611
[Test Fix #3424] PointInTimeOperationTest.listAllPits_positive #3611
Conversation
Signed-off-by: Eduardo Corazon <corazoneduardo@att.net>
Signed-off-by: Eduardo Corazon <corazoneduardo@att.net>
Currently investigating why solution works & properly implementing the fix. Will @ when ready for full review. |
…eOperationTests PR Signed-off-by: Eduardo Corazon <corazoneduardo@att.net>
src/integrationTest/java/org/opensearch/security/CrossClusterSearchTests.java
Outdated
Show resolved
Hide resolved
Signed-off-by: Eduardo Corazon <corazoneduardo@att.net>
@DarshitChanpura I've marked this PR as ready, the original problem for cleanUpPits has been addressed. I've reverted all accidental changes from CrossClusterSearchTests.java but I'm still getting conflicts. I was wondering why this might be as there were no changes to the file outside the reverted accidental change? |
I also deeply apologize for the delayed response regarding this matter. |
Thank you @EduardoCorazon. Can you explain how adding |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@EduardoCorazon Seems like there are conflicts, would you please address them?
try (RestHighLevelClient restHighLevelClient = cluster.getRestHighLevelClient(ADMIN_USER)) { | ||
|
||
restHighLevelClient.getAllPits(DEFAULT); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
qq, why add this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seemingly fixes the test flakiness. I've found that even just having the declaration of restHighLevelClient.getAllPits(DEFAULT)
before attempting to delete all PITS makes the listAllPits_positive
integration test succeed as opposed to failing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@EduardoCorazon Have we verified the cause of this?
Signed-off-by: Eduardo Corazon <corazoneduardo@att.net>
Signed-off-by: Eduardo Corazon <corazoneduardo@att.net>
@cwperks @DarshitChanpura I think there might be a synchronization issue that's affecting the behavior of cleanUpPits() and it could be why the test is flaky. Adding This can be verified by running |
Also, @cwperks do you know how I could push out the raw HTTP response as standard output? I've exhausted my attempts at attempting to do such given the current libraries. I apologize for the simple question. |
Doesn't look like this is being worked on anymore, going to close this out. Please feel free to reopen if you re-engage on this @EduardoCorazon |
Description
This PR is meant to address the issue of cleanUpPits() returning before all of the PITs have actually been deleted on the cluster as referenced in issue #3424.
[Describe what this change achieves]
restHighLevelClient.deleteAllPits(DEFAULT)
yields the prevalent error:getAllPits
or it could be a race condition whereby there is an attempt to delete PITs before internal operations have completed.Issues Resolved
#3424
Is this a backport? If so, please add backport PR # and/or commits #
Testing
Integration tests with gradlew were run on both listAllPits_positive() and the entire class PointInTimeOperationtest(). These tests were set to run at least 10 times by configuring ci.yml as outlined here: how to do this
Exit Criteria
Check List
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.