Skip to content

refactor(query): split table context and extract reusable query components#19739

Draft
forsaken628 wants to merge 23 commits intodatabendlabs:mainfrom
forsaken628:table-context-split
Draft

refactor(query): split table context and extract reusable query components#19739
forsaken628 wants to merge 23 commits intodatabendlabs:mainfrom
forsaken628:table-context-split

Conversation

@forsaken628
Copy link
Copy Markdown
Collaborator

@forsaken628 forsaken628 commented Apr 18, 2026

I hereby agree to the terms of the CLA available at: https://docs.databend.com/dev/policies/cla/

Summary

This PR completes the TableContext split by narrowing the top-level trait to subtraits, simple component getters, and as_any,
while moving simple shared state into reusable components.

It also extracts reusable query-side components such as broadcast, copy, mutation, result cache, read block thresholds, and
segment locations into common-component, and reorganizes QueryContext so trait implementations are grouped into dedicated modules
instead of staying in one large file. Most call-site changes are mechanical rewires to the new trait/component layout.

Tests

  • Unit Test
  • Logic Test
  • Benchmark Test
  • No Test - Explain why

Type of change

  • Bug Fix (non-breaking change which fixes an issue)
  • New Feature (non-breaking change which adds functionality)
  • Breaking Change (fix or feature that could cause existing functionality not to work as expected)
  • Documentation Update
  • Refactoring
  • Performance Improvement
  • Other (please describe):

This change is Reviewable

@github-actions github-actions bot added the pr-refactor this PR changes the code base without new features or bugfix label Apr 18, 2026
@forsaken628 forsaken628 requested a review from zhang2014 April 18, 2026 10:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr-refactor this PR changes the code base without new features or bugfix

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant