ra_log_file:write/2
thows an integrity_error
-> shouldn't it return {queued, State}
?
ra_log_file:write/2
allows to write sequences with missing indexes if they're in the middle of the list provided. If it's the first one missing, then integrity_error
. It should verify every entry
ra_log_file:take/3
crashes badly when the sequence is missing some indexes. This wouldn't happen if the previous one was working properly, but we also get a crash when we ask for an out of bounds range, i.e {-53, 10}. It should be a controlled error.
write/2
accepts initial index as 0, while append/2
starts in 1. <- inconsistent!