Thanks! I try to read the source code of ManagedCursor in pulsar project.
I'm aready pull source code success. i tried branch  master 2.1 2.0 , is any source code  submit not yet?


import org.apache.bookkeeper.mledger.proto.MLDataFormats;

I can't find source code in package org.apache.bookkeeper.mledger.proto

From: Sijie Guo
Date: 2018-07-12 00:40
Subject: Re: Ack mode of individual pulsar

In the context of pulsar, when a consumer acks a message, it doesn¡¯t remove entries from bookkeeper. Instead, for each subscription at pulsar, pulsar brokers use a separate ledger for storing the acknowledgments for each subscription. When a broker receives individual acks, it writes an entry to the cursor ledger marking that message as acknowledged, when the cursor ledgers move beyond the data ledger, broker deletes the data ledger.

If ack failed, brokers will try to redeliver the unacked messages after acks timeout. This is configured as ackTimeout when you construct a consumer instance.

Hope this helps.


On Wed, Jul 11, 2018 at 2:38 AM [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
In introduce of pulsar, i interest in ack mode of individual.
I know that pulsar use bookkeeper to store messages, and entries in bookkeeper write only once.
so i want to know how pulsar server do message ack in individual mode. if ack failed, how long will i receive the message again.