ppkarwasz opened a new pull request, #9: URL: https://github.com/apache/logging-flume-rpc/pull/9
## Problem The `build (windows-latest)` job fails on `main` with 14 failures in `TestReliableSpoolingFileEventReader`, while the Ubuntu and macOS jobs pass (see run 34915970440). `ReliableSpoolingFileEventReader.close()` only closed the deserializer and left the `DurablePositionTracker` of the current file open. The tracker keeps `.flumespool/.flumespool-main.meta` open for append. On Linux and macOS an open file can still be deleted, but on Windows it cannot, so: 1. The tests never closed their readers. 2. The `@After` cleanup could not delete the shared work directory (`The process cannot access the file because it is being used by another process`). 3. The stale meta file made every later `openFile` call fail with `Unable to delete existing meta file`, so subsequent tests read nothing. ## Changes * Keep the `PositionTracker` in `FileInfo` and close it together with the deserializer in `close()` and `retireCurrentFile()`, without relying on the deserializer propagating the close call to the stream. * Close the tracker if the input stream or deserializer cannot be created in `openFile`. * Create every reader in `TestReliableSpoolingFileEventReader` in a try-with-resources block. ## Verification `TestReliableSpoolingFileEventReader` passes locally on Linux (23 tests) and leaves no work directory behind. The Windows job in this PR's CI run is the real check. 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- 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: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
