I was looking at the code that loads the snapshots/logged transactions
into the database on startup, and noticed that the FileTxnSnapLog
initializes the log iterator to the last transaction committed to the
snapshot (restore()). This causes the last transaction to be
processed, even though its already in the snapshot. I'm not sure if
this is a big problem in reality, or if it was intentional. Does
anyone know anything about this?
Also, it seems like loadDataBase is called twice in
ZooKeeperServer.loadData(), is that intentional for some reason?