This method was intended for an unbounded Observable without backpressure. Thus we should implement it based on Observable of RxJava rather than Publisher. And then maybe latter we may convert it to a Flowable (a Rx Java implementation of Publisher) with a BackpressureStrategy.BUFFER strategy.