Manejo de errores de suscripción anidada RX2.0

Estoy tratando de descubrir cómo captan las excepciones las transmisiones RX. En particular, si tengo una suscripción dentro de una suscripción y la suscripción interna recibe una exception de la que es observable, ¿debo manejar eso en onError para suscripción interna o puedo manejarlo en onerror de suscripción principal?

observableThing1.subscribe({ _ -> observableThing2.subscribe({ _ -> // Something horrible happens here an an exception is throw by observableThing2 }) }, { error -> // Expecting I can handle all errors at the top most subscription }) 

En su caso, necesitaría manejar onError para cada subscription :

  observable1Thing().subscribe({ obs1Result -> observable2Thing().subscribe({ obs2Result -> }, { obs2Error -> }) }, { obs1error -> }) 

Si combina los observables con un operador como flatMap , solo necesitaría una subcription y, por lo tanto, manejaría solo un caso de onError . Qué operador usarías depende de cómo quieras combinar los observables .

Ejemplo:

  obs1().flatMap { obs2() }.subscribe({ }, { error -> }) 
  • Observable.combineLa causa de error más reciente después de actualizar a RxJava 2.xx - no se puede inferir el tipo
  • OnErrorNotImplementedException utilizando RxJava2 y Retrofit2 Mosby MVI
  • RxJava Debounce onNext ()
  • ¿Cómo puedo fusionar una sola <Lista <Lista <T >>> en una Lista <T> con RxJava 2?
  • Cómo controlar el flujo sin .flatMap, que rompe una stream reactiva que impide que operadores como distinctUntilChanged trabajen en toda la secuencia
  • Pruebas unitarias Rxjava observables que tienen un retraso
  • Tipo de devolución diferente en RxJava 2 (actualización desde RxJava1)
  • Java genérico para Kotlin genérico. Retorno genérico del método
  • Cómo contar el time de ejecución de lo observable
  • Enfrentando problemas con la implementación de Rx Java con la architecture de flujo en Android kotlin
  • Retrofit-Vertx con RxJava2 en Kotlin IllegalStateException message == null