Flux.replay / Flux.cache hangs or serves wrong values due to regressions in 3.3.[0-2] #2030
Closed
2 tasks done
Labels
Milestone
In 3.3.0, #1185 introduced a change that aims at performing the minimum necessary request on a cached/replayed source upon
connect
. Comparing toCalifornium
where the source would always be requested byLong.MAX_VALUE
upon connection, 3.3.0 would attempt to take the maximum requested amount from early subscribers, ie these that subscribed to theConnectableFlux
beforeconnect()
is called.There was several bugs with that new implementation, that led to underrequesting and hanging:
connect()
means no request was made at all, instead of falling back to theMAX_VALUE
behavior (causes ConnectableFlux changes behavior between 3.2 and 3.3 #2028 and Cached Flux problem with application/stream+json response type spring-projects/spring-framework#24472, fixed in fix #2030 Let replay request(UNBOUNDED) when no early subscriber #2031)The text was updated successfully, but these errors were encountered: