Hi,

I was going through bookkeeper code, particularly to see when and how
transaction logs are written and flushed to disk.
Just curious to understand, why in, Bookie.addEntryInternal method, writes
to journal happen after the writes to ledger.  (
https://github.com/apache/bookkeeper/blob/master/bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/Bookie.java
)
Also, journal writes are not flushed to disk synchronously, as they happen
in their own dedicated thread (and can also be done in batches).
So I had two questions.
1. Why journal writes are not done before the writes to ledgers
2. Why not to wait till journal writes are successful (even if not synced
to disk may be) before returning the response.
If these things are not done, there is always a risk of losing data in case
of server or disk crash?

Thanks,
Unmesh

Reply via email to