apache / apache/pulsar

[Doc] Message Id Uniqueness?

Open
#18,835 9 comments 0 reactions 0 assignees View on GitHub
doc-required Stale
Dominant language
Java
Stars
15.3k
Forks
3.8k
Avg merge
1d 14h
Merged PRs (30d)
160

Description

### Search before asking

- [X] I searched in the [issues](https://github.com/apache/pulsar/issues) and found nothing similar.

### What issue do you find in Pulsar docs?

In https://pulsar.apache.org/docs/next/concepts-messaging/

The Message ID is described as

> The message ID of a message is assigned by bookies as soon as the message is persistently stored. Message ID indicates a message’s specific position in a ledger and is unique within a Pulsar cluster.

In the binary protocol it is:
https://github.com/apache/pulsar/blob/master/pulsar-common/src/main/proto/PulsarApi.proto#L57-L67

Ie. the message ID is comprised of various fields, it is unclear which fields defines the uniqueness.

### What is your suggestion?

Looking at https://pulsar.apache.org/docs/2.10.x/pulsar-admin/ it uses ledgerId & entryId for some of the commands, if this is exactly the unique part of the message id, it can be added to the documentation for clarity.

### Any reference?

_No response_

### Are you willing to submit a PR?

- [ ] I'm willing to submit a PR!

Contributor guide

Open the contributing guide

Research direction

Start with the Message ID description in concepts-messaging and the fields in pulsar-common/src/main/proto/PulsarApi.proto at lines 57-67. Compare those fields with the ledgerId and entryId references in the Pulsar admin documentation. Done means the documentation clearly identifies which Message ID fields establish uniqueness, with wording consistent across the referenced pages.

Written by the indexing model from the issue text.

Assessment

Domain
distributed-systems, documentation
Issue type
Documentation
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.