如何使用 Chronicle Queue 复制一个 tailer 的读取索引以应用于另一个 tailer
How to copy one tailer's read index to apply into another tailer using Chronicle Queue
我创建了一个 tailerA 并使用 tailerA 读取到第 100 条消息。
然后我创建另一个 tailerB
ChronicleQueue queue = SingleChronicleQueueBuilder.single("/home/data").rollCycle(rollCycles).build()
ExcerptTailer tailerA = queue.createTailer("A")
ExcerptTailer tailerB = queue.createTailer("B")
for(int i = 1;i < 101;i++){
tailerA.read() <- this is a simplified code for read
}
使用tailerB读取,应该是从第1条到第100条一条一条读取,但是我需要的是使用tailerB从第100条消息开始读取。如何使用tailerA将第100条信息复制到tailerB中?
可以通过
获取ExcerptTailer
指向的索引
long index = tailerA.index();
并且您可以使用
将尾标设置为该索引
boolean success = tailerB.moveToIndex(index);
假设这是成功的,接下来两个 tailers 将读取相同的摘录。
我创建了一个 tailerA 并使用 tailerA 读取到第 100 条消息。 然后我创建另一个 tailerB
ChronicleQueue queue = SingleChronicleQueueBuilder.single("/home/data").rollCycle(rollCycles).build()
ExcerptTailer tailerA = queue.createTailer("A")
ExcerptTailer tailerB = queue.createTailer("B")
for(int i = 1;i < 101;i++){
tailerA.read() <- this is a simplified code for read
}
使用tailerB读取,应该是从第1条到第100条一条一条读取,但是我需要的是使用tailerB从第100条消息开始读取。如何使用tailerA将第100条信息复制到tailerB中?
可以通过
获取ExcerptTailer
指向的索引
long index = tailerA.index();
并且您可以使用
将尾标设置为该索引boolean success = tailerB.moveToIndex(index);
假设这是成功的,接下来两个 tailers 将读取相同的摘录。