[improve][meta] Support tuning Oxia MetadataStoreConfig through metadata-store URIs - #26067
Merged
Merged
Conversation
void-ptr974
force-pushed
the
oxia-metadatastore-uri-config
branch
3 times, most recently
from
June 19, 2026 05:04
bebeaa6 to
0888fcc
Compare
void-ptr974
force-pushed
the
oxia-metadatastore-uri-config
branch
from
June 19, 2026 05:20
0888fcc to
676f5d6
Compare
void-ptr974
marked this pull request as ready for review
June 19, 2026 05:24
Member
|
Hi @void-ptr974 It seems like we need to refine the title and description since this change affects the whole metadata, not only Oxia. right? Cc @lhotari |
Member
|
Cherry-picked to branch-4.2 in #26150 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #26060
Motivation
When Oxia is used as the metadata store for BookKeeper through
bookkeeperMetadataServiceUri/ BookKeepermetadataServiceUri, there is currently no way to tune PulsarMetadataStoreConfigsettings for the metadata store created by themetadata-store:BookKeeper driver.This makes it hard to tune Oxia metadata-store behavior such as batching delay, batching limits, session timeout, and SerDes threads without adding new BookKeeper-specific configuration fields.
Modifications
Add support for configuring
MetadataStoreConfigthrough query parameters onmetadata-store:URIs.For example:
The Pulsar BookKeeper metadata driver now:
metadata-store:URIs when it creates a metadata store.MetadataStoreConfigparameters into theMetadataStoreConfigbuilder.MetadataStoreConfigparameter binding, keeping the driver path focused on metadata-store creation.METADATA_STORE_INSTANCEpath unchanged, so the default broker path that reuses the broker metadata store is not affected.metadataServiceUriand, when available, the backend metadata store URL.The supported
MetadataStoreConfigquery parameters are:The broker and BookKeeper configuration examples were updated to document the new URI query format.
Verifying this change
This change added tests and can be verified as follows:
AbstractMetadataDriverTestto verify URI parsing,MetadataStoreConfigquery binding, unknown-parameter pass-through, default URI behavior, shared-store compatibility, and contextual validation failures.bookkeeperMetadataServiceUriwith query parameters is preserved and passed to BookKeeper client configuration.Verified locally with:
Does this pull request potentially affect one of the following parts:
This affects deployment configuration for users who explicitly configure
metadata-store:URIs, especially Oxia-backed BookKeeper metadata stores. Existing configurations without query parameters and the default shared metadata-store path remain unchanged.