You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@fesod.apache.org by "BigDataDZ (via GitHub)" <gi...@apache.org> on 2026/10/09 07:30:58 UTC
[I] [Bug] Read-side cleanup reports the last failure and hides earlier ones (same class as #1136) [fesod]
BigDataDZ opened a new issue, #1204:
URL: https://github.com/apache/fesod/issues/1204
### Fesod version
Current `main` (a559aa1).
### Description
PR #1198 fixes #1136 on the write side: `WriteContextImpl#finish` used to overwrite the recorded failure with every later one, so only the last cleanup error surfaced. The read-side cleanup has the identical pattern and still reports the **last** failure, hiding earlier ones.
### Location
`fesod-sheet/src/main/java/org/apache/fesod/sheet/analysis/ExcelAnalyserImpl.java` (cleanup sequence, around lines 230-282): six `throwable = t;` overwrites across
1. `ReadCache#destroy`
2. `OPCPackage#revert` (xlsx)
3. `PoifsFileSystem#close` (xls)
4. CSV parser close
5. input stream close
6. temp file delete
### Reproduction sketch
Read an xls with a `ReadCache` whose `destroy()` throws, backed by a stream whose `close()` also throws: the `destroy()` failure is overwritten by the close failure, so callers only ever see "close failed" and the cache failure is lost.
### Expected behavior
Same as #1136 concluded for the write side: the first failure is the cause, every later failure is attached with `Throwable#addSuppressed`, so the full chain is visible.
### Suggested fix
Mirror #1198's `recordFailure` shape in `ExcelAnalyserImpl`'s cleanup, plus a regression test forcing two cleanup failures (a failing `ReadCache#destroy` and a failing stream `close()`).
### Related existing work
#1136 (write side, fixed by #1198). No read-side coverage.
### Are you willing to submit a PR?
- [x] I'm willing to submit a PR!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@fesod.apache.org.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@fesod.apache.org
For additional commands, e-mail: commits-help@fesod.apache.org
Re: [I] [Bug] Read-side cleanup reports the last failure and hides earlier ones (same class as #1136) [fesod]
Posted by "BigDataDZ (via GitHub)" <gi...@apache.org>.
BigDataDZ commented on issue #1204:
URL: https://github.com/apache/fesod/issues/1204#issuecomment-6076514183
Claiming this one (I filed it after reviewing #1198). Plan: mirror the recordFailure shape from #1198 in ExcelAnalyserImpl cleanup, and add a regression test forcing two cleanup failures (failing ReadCache#destroy + failing stream close) asserting the first is the cause and the second is suppressed.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@fesod.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@fesod.apache.org
For additional commands, e-mail: commits-help@fesod.apache.org