Exception escaping recover block using timed pull?
Open
Nobody has claimed this yet.
bug
- Dominant language
- Scala
- Stars
- 2.5k
- Forks
- 636
- Avg merge
- 2d 4h
- Merged PRs (30d)
- 7
Description
Using a timed pull to detect idle interval, and restart on exception it appears that exception sometimes escapes the recover block leaking out to IO.
I am not sure why this happens.
- Scala - 3.1.1
- fs2 - 3.2.5
Repro
The following ideally should never throw an exception. But unfortunately the inner exception does, randomly.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the linked Scastie reproduction using Scala 3.1.1 and fs2 3.2.5, focusing on the timed pull and nested recover behavior. Confirm the intermittent exception escape and determine the conditions that trigger it; done means the reproduction no longer leaks the inner exception to IO.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- scala
- Domain
- stream-processing
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100