то есть есть если через фильтр не пройдет ничто, то следующий ниже switchIfEmpty не сработает ?
По доке switchIfEmpty агрится но onComplete(). Как у тебя работает поток? Если поток не бесконечный, и onComplete() вызвал был, то и switchIfEmpty должен отработать.