This repository has been archived by the owner on Jan 24, 2024. It is now read-only.
[branch-2.10] Use a more efficient implementation of sanitizeMetricName #1654
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 #1652
Motivation
Pulsar 2.10 or earlier depends on io.prometheus:simpleclient:0.5.0, whose implementation of
Collectors.sanitizeMetricName
uses regex, which is inefficient and costs much CPU.Modifications
Migrate the implementation of
sanitizeMetricName
from io:prometheus:simpleclient:0.16.0 to branch-2.10 or earlier.Documentation
Check the box below.
Need to update docs?
doc-required
(If you need help on updating docs, create a doc issue)
no-need-doc
(Please explain why)
doc
(If this PR contains doc changes)