For completeness we should also mention here that the Subscriber must not call any methods on Subscription from within the onNext method (i.e. beneath this stack frame), instead it must dispatch such processing asynchronously. This is necessary to avoid stack-overflowing loops of request–onNext–request.