apache / apache/druid

Split MetadataSegmentView in two implementations: caching and direct RPC call

Open
#7,392 4 comments 0 reactions 0 assignees View on GitHub
Area - Metadata Area - SQL Refactoring
Dominant language
Java
Stars
14.1k
Forks
3.8k
Avg merge
2d 58m
Merged PRs (30d)
233

Description

Currently, `MetadataSegmentView` violates the Single Responsibility Principle. There should be two separate implementations of the API, one is caching and another making direct RPC, and the choice between them should be done during Dependency Injection binding.

FYI @surekhasaharan

Contributor guide

Open the contributing guide

Research direction

Start by locating MetadataSegmentView and the Dependency Injection bindings that select its implementation. Trace how the current API handles caching and direct RPC calls, then identify the existing tests covering both paths. Done means the responsibilities are split into caching and direct-RPC implementations, with the choice made through dependency injection.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend, databases
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.