Instead of Runnable, can you submit a callable so we can get futures for each batch? Then we could go future.get() to assert whether the batch was written successfully or not.