Skip to content

[cleanup] PIP-462: Remove Etcd metadata store backend#25329

Open
merlimat wants to merge 2 commits intoapache:masterfrom
merlimat:pip-462-etcd
Open

[cleanup] PIP-462: Remove Etcd metadata store backend#25329
merlimat wants to merge 2 commits intoapache:masterfrom
merlimat:pip-462-etcd

Conversation

@merlimat
Copy link
Contributor

Motivation

Etcd metadata store backend is not used in production Pulsar deployments, yet maintaining it imposes significant costs:

  • Dependency burden: jetcd-core pulls in gRPC, Netty, Vert.x and requires a dedicated shading module
  • Distribution size: Increases Pulsar tarball and Docker image size for all users
  • Library maintenance: jetcd is not actively maintained
  • Maintenance overhead: Must be kept in sync with every MetadataStore interface change

Both ZooKeeper and Oxia are fully supported, battle-tested backends. The community's future efforts are focused on Oxia. Maintaining a third, unused backend dilutes this focus.

Changes

This PR adds the PIP-462 proposal document describing the removal of:

  • EtcdMetadataStore and EtcdSessionWatcher implementation classes
  • jetcd-core-shaded shading module
  • jetcd-core and jetcd-test dependencies
  • EtcdMetadataStoreTest

Documentation

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

@github-actions github-actions bot added PIP doc-not-needed Your PR changes do not impact docs labels Mar 16, 2026
@merlimat merlimat changed the title [pip] PIP-462: Remove Etcd metadata store backend [cleanup] PIP-462: Remove Etcd metadata store backend Mar 16, 2026
@Denovo1998
Copy link
Contributor

@merlimat @StevenLuMT
If the support for Etcd is deleted, can it be migrated to the https://github.com/apache/pulsar-java-contrib library? Just like the previous pulsar-sql(pulsar-presto) module has also been migrated to other code libraries.

@BewareMyPower
Copy link
Contributor

@Denovo1998 Yes. Feel free to do that. Since this implementation has not been modified for long time, it could be as simple as a copy-and-paste.

@merlimat
Copy link
Contributor Author

@Denovo1998 @StevenLuMT Added a PR to move it to contrib repo apache/pulsar-java-contrib#26

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 PIP ready-to-test

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants