-
Notifications
You must be signed in to change notification settings - Fork 25k
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
Corruption detection is fragile? #24800
Comments
I think we can expand the unwrapping to suppressed exceptions but I am not sure it will help much. Usually we will just detect it a bit later? |
Pinging @elastic/es-distributed |
@jpountz @s1monw is this still something you think needs to be addressed, given that the corruption detection seems to be best-effort anyway? |
This issue is causing pain across our test suite, see e.g. #41201 |
Workaround incoming in #41889 :) |
* As discussed in elastic#24800 we want to check for suppressed corruption indicating exceptions here as well to more reliably categorize corruption related exceptions * Closes elastic#24800, 41201
* Make unwrapCorrupt Check Suppressed Ex. * As discussed in elastic#24800 we want to check for suppressed corruption indicating exceptions here as well to more reliably categorize corruption related exceptions * Closes elastic#24800, 41201
* Make unwrapCorrupt Check Suppressed Ex. * As discussed in elastic#24800 we want to check for suppressed corruption indicating exceptions here as well to more reliably categorize corruption related exceptions * Closes elastic#24800, 41201
* Make unwrapCorrupt Check Suppressed Ex. (elastic#41889) * As discussed in elastic#24800 we want to check for suppressed corruption indicating exceptions here as well to more reliably categorize corruption related exceptions * Closes elastic#24800, 41201
* Make unwrapCorrupt Check Suppressed Ex. (elastic#41889) * As discussed in elastic#24800 we want to check for suppressed corruption indicating exceptions here as well to more reliably categorize corruption related exceptions * Closes elastic#24800, 41201
I was looking at how we detect corruptions, and the current logic tries to see whether the exception itself or any of its causes is an instance of
CorruptIndexException
. However, the following pattern that Lucene uses in multiple places:causes the
CorruptIndexException
to be suppressed if some other exception was thrown in thetry
block. So the thrown exception would not be seen as a corruption exception. This makes me want to check for suppressed exceptions as well inExceptionsHelper.unwrapCorruption
but I don't know enough about corruption detection to know whether that is safe to do?The text was updated successfully, but these errors were encountered: