Skip to content

[feat] PIP-460: Add topic:// and segment:// domain support to pulsar-common#25456

Open
merlimat wants to merge 1 commit intoapache:masterfrom
merlimat:st-topic-name
Open

[feat] PIP-460: Add topic:// and segment:// domain support to pulsar-common#25456
merlimat wants to merge 1 commit intoapache:masterfrom
merlimat:st-topic-name

Conversation

@merlimat
Copy link
Copy Markdown
Contributor

@merlimat merlimat commented Apr 1, 2026

Summary

  • Add topic:// and segment:// topic domains to support PIP-460: Scalable Topics
  • topic:// represents a scalable topic parent; segment:// represents individual persistent segments with hash-range descriptors (e.g., segment://tenant/ns/topic/0000-7fff-1)
  • Extend TopicName with parsing, persistence encoding, and accessors for the new domains
  • Add HashRange, SegmentInfo, SegmentTopicName utility classes in pulsar-common
  • Add comprehensive tests for naming, storage paths, schema names, and round-trip persistence encoding

Test plan

  • TopicNameTest — parsing, persistence encoding, schema names, lookup names, rest paths, segment descriptors for both new domains
  • HashRangeTest — range validation, overlap detection, containment, adjacency
  • SegmentTopicNameTest — segment topic name construction and accessors

  • doc
  • doc-required
  • doc-not-needed
  • doc-complete

@apache apache deleted a comment from github-actions bot Apr 1, 2026
@merlimat merlimat changed the title Add topic:// and segment:// domain support to pulsar-common [feature] PIP-640: Add topic:// and segment:// domain support to pulsar-common Apr 1, 2026
@github-actions github-actions bot added doc-not-needed Your PR changes do not impact docs and removed doc-label-missing labels Apr 1, 2026
Introduce new TopicDomain values (topic, segment) for scalable topics.
Extend TopicName to parse segment:// URIs with hash-range and segment-id
components. Add HashRange, SegmentInfo, SegmentState, and SegmentTopicName
utility classes with comprehensive tests.
@dao-jun dao-jun added this to the 5.0.0 milestone Apr 2, 2026
@merlimat merlimat changed the title [feature] PIP-640: Add topic:// and segment:// domain support to pulsar-common [feature] PIP-460: Add topic:// and segment:// domain support to pulsar-common Apr 2, 2026
@merlimat merlimat changed the title [feature] PIP-460: Add topic:// and segment:// domain support to pulsar-common [feat] PIP-460: Add topic:// and segment:// domain support to pulsar-common Apr 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

doc-not-needed Your PR changes do not impact docs ready-to-test type/PIP

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants