The GitHub Actions job "Pull Requests" on pekko.git/feat/stream-aggregateboundary-supervision has succeeded. Run started by GitHub user He-Pin (triggered by He-Pin).
Head commit for run: bd87a8d36adfbae04aa1291d0c8fac01ce406f30 / 虎鸣 <[email protected]> fix: add supervision strategy support for aggregateWithBoundary callbacks Motivation: aggregateWithBoundary invokes multiple user callbacks (`allocate`, `aggregate`, `harvest`, and timer predicate), but exceptions were not supervised and failed the stream unconditionally. Modification: Add decider-based exception handling in AggregateWithBoundary for all callback sites: - allocate/aggregate in onPush - timer predicate and harvest in onTimer - harvest in onUpstreamFinish Stop fails the stage. Resume/Restart drop failing element/aggregate and continue. For aggregate callback failures, Resume now resets aggregate state to avoid retaining partially-mutated mutable state. Update Scala/Java API docs and operator docs to document supervision behavior. Add directional regression tests in AggregateWithBoundarySpec covering: - aggregate callback failures under Resume/Restart - allocate callback failure under Resume - harvest callback failure under Resume - timer predicate failure under Resume (explicit scheduler) Result: aggregateWithBoundary now honors ActorAttributes.SupervisionStrategy across all user callback failure points with deterministic regression coverage. Tests: - sbt "stream-tests/Test/testOnly org.apache.pekko.stream.scaladsl.AggregateWithBoundarySpec org.apache.pekko.stream.scaladsl.AggregateWithTimeBoundaryAndSimulatedTimeSpec" -- 11/11 passed - sbt "stream/mimaReportBinaryIssues" -- clean - sbt "docs/paradox" -- passed References: Refs #3110 Report URL: https://github.com/apache/pekko/actions/runs/28169923309 With regards, GitHub Actions via GitBox --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
