So I think the Flowable/LiveData implementation is pretty naive. It’s basically just waiting for an insert/update and re-running your select. IMO that’s probably a good approach for them to take given that DB operations happen off of the main thread.