以相反的顺序处理 ReliableTopic 的 RingBuffer(从最新到最旧)

Process ReliableTopic's RingBuffer in reverse order (newest to oldest)

我正在使用 ReliableTopic 重播最近 20000 个事件和所有后续事件。

首先,我使用 ReliableMessageListener 订阅 ReliableTopic,我每次都从 retrieveInitialSequence() 方法返回 0这对我想要实现的目标来说是否正确?

当我订阅 ReliableTopic 时,我想以相反的顺序处理其内部 RingBuffer 中的所有内容,从最新到最旧。我可以通过缓冲第一个 InternalRingBuffer.size() 项然后反转该列表来实现这一点。这依赖于能够检索内部 RingBuffer 的大小,因为它可能未满。但是,当我在新连接的实例上调用 InternalRingBuffer.size() 时,尽管缓冲区中有项目,但它返回 0为什么会这样,我该如何解决?

您发现了一个错误,我创建了以下问题:https://github.com/hazelcast/hazelcast/issues/14468