The GitHub Actions job "Pull Requests" on pekko.git/optimize-stream-boundary-batching has failed. Run started by GitHub user He-Pin (triggered by He-Pin).
Head commit for run: 8f105fa289dd6595c8660c6703c6bbfba00024f5 / 虎鸣 <[email protected]> perf: batch async boundary elements Motivation: Async stream islands send each element across the internal actor boundary as a separate boundary event, which adds per-element allocation and mailbox overhead. Modification: Batch elements produced during an interpreter run for internal stream boundaries and flush them when the interpreter parks. Keep external Reactive Streams subscribers on the existing per-element path, flush pending elements before completion, and clear pending elements on cancellation or failure. Result: Internal async boundary crossings allocate fewer boundary events and actor messages while preserving element ordering and Reactive Streams behaviour. Tests: - sbt "stream / Compile / compile" -- passed - sbt "stream-tests / Test / testOnly org.apache.pekko.stream.FusingSpec org.apache.pekko.stream.scaladsl.PublisherSinkSpec" -- passed - sbt "bench-jmh / Compile / compile" -- passed - sbt "bench-jmh/Jmh/run -wi 1 -i 3 -w 5s -r 5s -f 1 -p asyncBoundaries=1,3,10 -prof gc .*AsyncBoundaryThroughputBenchmark.async_boundary_throughput" -- passed for current branch - git diff --check -- passed - scalafmt --list --mode diff-ref=origin/main -- passed References: None - internal stream boundary throughput optimization Report URL: https://github.com/apache/pekko/actions/runs/28710792033 With regards, GitHub Actions via GitBox --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
