Our append function does not write EOF to the current queuefile when rolling to the next. So our own tailer will get stuck on the last entry of the old queuefile, even though the appender has continued ahead.
We consult the clock before polling the appender, and will switch queuefiles in preparation for the next write. This is not correct. instead:
take write lock from the current queuefile
sample the clock
no roll:
write entry normally and release lock
roll:
create new queuefile,
update global maxcycle, current cycle
write EOF to the current queuefile, releasing the writelock
Our append function does not write EOF to the current queuefile when rolling to the next. So our own tailer will get stuck on the last entry of the old queuefile, even though the appender has continued ahead.
We consult the clock before polling the appender, and will switch queuefiles in preparation for the next write. This is not correct. instead: