Ensure Lucene sources don't swallow root cause exceptions [LUCENE-7470]
- Dominant language
- Java
- Stars
- 3.6k
- Forks
- 1.4k
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 88
Description
@rmuir created a nice tool to look at the Java bytecode to determine whether e.g. a `finally` or `catch` clause may ignore the original root cause exception, here: https://github.com/rmuir/elasticsearch/tree/catchAnalyzer
It's a fork of ES but I think maybe we can extract it and use it in Lucene.
Unlike Python, Java unfortunately does not seem to have safeguards against exceptionally handling code accidentally losing the original exception.
---
Migrated from [LUCENE-7470](https://issues.apache.org/jira/browse/LUCENE-7470) by Michael McCandless (@mikemccand), 1 vote, updated Sep 30 2016
Contributor guide
Research direction
Start by reviewing the catchAnalyzer fork linked in the issue and determine how its bytecode analysis could be extracted for Lucene. Done means Lucene has a usable check for catch or finally paths that may discard the original root-cause exception, with the integration scope and validation approach established.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- devtools
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100