Существует PublishProcessor
, который вызывает оператор .doOnSubscribe(checkCondition)
для выполнения определенной проверки. checkCondition
предназначен для выброса UnsupportedOperationException
, который затем должен быть передан подписчику вниз по потоку до onError()
. Вместо этого вызывается UndeliverableException
и происходит сбой процесса.Исключение не распространяется на onError() при броске из doOnSubscribe()
publishProcessor
.filter(() -> { // predicate })
.observeOn(scheduler)
.doOnSubscribe(checkCondition)
.to((sourceFlowable) -> new FancyFlowable(sourceFlowable)))
.safeSubscribe(subscriber);
У кого-нибудь есть идеи, что здесь происходит не так? Почему исключение, вызванное checkCondition
, не распространяется на onError
абонента?
Наблюдаемого поведение связанно с ошибкой. Исправьте [# 5103] (https://github.com/ReactiveX/RxJava/pull/5103). – akarnokd