block: Add "drained begin/end" for transactional external snapshot