He-Pin commented on code in PR #3095:
URL: https://github.com/apache/pekko/pull/3095#discussion_r3444297951
##########
stream/src/main/scala/org/apache/pekko/stream/javadsl/Source.scala:
##########
@@ -692,6 +692,12 @@ object Source {
* @param bufferSize size of buffer in element count
* @param overflowStrategy Strategy that is used when incoming elements
cannot fit inside the buffer
*/
+ @deprecated(
+ "Prefer Source.queue(bufferSize) which materializes a BoundedSourceQueue
with synchronous feedback " +
+ "(dropping the newest element when the buffer is full). For backpressure,
use Source.actorRefWithBackpressure " +
+ "or MergeHub.source instead. See the Pekko Streams documentation for the
Source.queue migration guide.",
Review Comment:
It’s futile, because messages must first enter the mailbox before policies
can actually be executed; if the actor never gets scheduled, none of those
policies take effect. Consequently, an Out-of-Memory (OOM) error occurs as the
mailbox grows indefinitely. In my view, this design is fundamentally flawed—it
poses serious production safety risks under high load and, quite simply, is
prone to causing production incidents.
--
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]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]