merlimat opened a new pull request, #25328: URL: https://github.com/apache/pulsar/pull/25328
## Summary - Add optional secondary index associations to `MetadataStoreExtended.put()` via a `Map<String, String>` parameter (index name → secondary key). - Add `MetadataStore.findByIndex()` query method that returns all entries matching a given secondary index under a path prefix. - Backends without native index support (ZK, RocksDB, Memory) fall back to a full children scan with predicate filtering. - Oxia's native secondary indexes are leveraged directly, with the parent path prepended to the secondary key for natural scoping. This could be used to provide fast filtering based on topic properties (e.g., quickly finding all topics owned by a specific broker or belonging to a specific namespace) without requiring a full scan of the metadata store. ## Test plan - [x] Added `MetadataStoreSecondaryIndexTest` with tests for put, find, update, and edge cases - [x] Tests run against all backends (Memory, ZK, RocksDB, Oxia) via the `impl` data provider - [x] Verified no regressions in existing `MetadataStoreExtendedTest` --- - [ ] doc-not-needed 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
