> The goal is to start from a known MessageId and read the N message
> before this MessageId.

Have you looked at the seek implementation to see if it would be
feasible to extend the implementation and add a method to "seekBefore"
a message id in the way you described? I haven't considered all of the
implications, but if the main goal is to move the cursor, I think the
solution should be about moving the cursor, not about reading a topic
in reverse.

Thanks,
Michael

On Tue, Mar 7, 2023 at 6:50 AM Alexandre DUVAL <kanna...@gmail.com> wrote:
>
> Hi Yong,
>
> The goal is to start from a known MessageId and read the N message
> before this MessageId.
>
> Best,
>
> Kannar
>
>
> On 3/7/23 01:53, Yong Zhang wrote:
> > Hi Kannar,
> >
> > Just interested in what exactly your case.
> >
> > Why do you need to read messages in a reversed order? What is your case?
> >
> > Best,
> > Yong
> >
> > On Mon, 6 Mar 2023 at 23:37, Alexandre DUVAL<kanna...@gmail.com>  wrote:
> >
> >> Hi,
> >>
> >> I'm wondering if it is possible to introduce a new feature on Pulsar
> >> which will enable users to read topic from a defined MessageId to
> >> previous messages until the begin of the topic.
> >>
> >> I tried to use Pulsar SQL but it requires so much RAM even for little
> >> queries (due to Presto design).
> >>
> >> Currently, every read in Pulsar are expected to be going forward. So it
> >> might be a bit tricky to prevent every weird behavior by introducing the
> >> feature.
> >>
> >> I'm currently tried to make an MVP/POC by introducting a readReverse
> >> field in the CommandSubscribe that is used by ReaderAPI and currently
> >> looking for to create a getFirstMessageId() on ManagedLedger
> >> (https://github.com/CleverCloud/pulsar/pull/3). I also removed
> >> startPosition < endPosition sanity checks in BookKeeper locally
> >> (https://github.com/CleverCloud/bookkeeper/pull/2).
> >>
> >> We definitely prefer a readPrevious(), hasPreviousMessageAvailable() in
> >> the ReaderAPI.
> >>
> >> I'm not familiar with these internals such as NonDurableCursor,
> >> RangeEntryCache, ManagedCursor so it's a bit tricky.
> >>
> >> So I wondering someone to help/guide me or even directly handle the
> >> subject (or the discuss).
> >>
> >> Regards,
> >>
> >> Kannar
> >>
> >>
> >>
> --
> *Alexandre DUVAL*
> @KannarFR
> /+33 6 12 97 19 70/

Reply via email to