I can see why we want to return the error immediately, but that should only happen if there are no `onNext` notifications queued to happen. If there are, the `onError` needs to wait, not interleave or cause them to be dropped.