Closed david-bouyssie closed 1 year ago
That comment is no longer completely accurate. Libchronicle can roll over the queue files itself, and does so at the correct times. It does not yet read or write index structures in metadata sections other than the header, it just skips them if it encounters them or another writer writes them. It therefore does a linear scan for recovery from a nonzero sequence number.
I know the high level details of indexing (index
, index2index
etc,
sequence number and pointers to data offsets as pairs of 8bytes) but it
would be a couple of days with a hex editor and debugger to implement and
verify it all works correctly.
I pulled all of this together for a proof of concept low latency IPC path for a client. It works but we’ve not hardened it for production.
On Fri, 3 May 2019 at 22:31, david-bouyssie notifications@github.com wrote:
In the spice code I found the following TODO:
current iteration requires a Java Chronicle-Queues appender to be writing to the same queue on a periodic timer to roll over the log files correctly and maintain the index structures.
Could you please provide more details on that?
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/TeaEngineering/libchronicle/issues/5, or mute the thread https://github.com/notifications/unsubscribe-auth/AAJCDPXUSYWZSW6L2V3TSWTPTSVL5ANCNFSM4HKXEAOA .
Log file rollover and creation of a queue from scratch is now implemented, closing.
In the spice code I found the following TODO: current iteration requires a Java Chronicle-Queues appender to be writing to the same queue on a periodic timer to roll over the log files correctly and maintain the index structures.
Could you please provide more details on that?