Skip to content

ref(options): migrate query-execution, cache & delete config to sentry-options#8118

Open
phacops wants to merge 2 commits into
claude/options-migration-replacerfrom
claude/options-migration-deletes
Open

ref(options): migrate query-execution, cache & delete config to sentry-options#8118
phacops wants to merge 2 commits into
claude/options-migration-replacerfrom
claude/options-migration-deletes

Conversation

@phacops

@phacops phacops commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

What

Consolidated module slice of the runtime-config → sentry-options migration (splitting #8096). Covers the query-execution path, the result cache, and the lightweight-delete path.

These three areas are grouped into one PR deliberately: the broad API/integration tests (test_api, test_search_issues_api, test_db_query, test_lw_deletions) toggle config keys that are read by source files spread across all three. Splitting them further would leave an intermediate stacked PR with a key's read migrated but its test not yet converted (or vice-versa) — so they must land together to keep every PR green.

Source areas: db_query, the ClickHouse HTTP/native clients, the result cache, the physical query processors (clickhouse-settings override, mapping optimizer, uniq-in-select), SnQL parser limits + function validator, the low-cardinality processor, the cluster selector, optimize util, the errors read-only storage selector, query-log COGS sampling, request consistency override, and the lw_deletions off-peak scheduler / delete strategy / bulk + single delete query paths.

Schema defaults match the prior get_*_config defaults (incl. the sentinel-0 override semantics for optimize_parallel_threads / http_batch_join_timeout), so behavior is unchanged until set in sentry-options-automator.

Stacked on #8117#8116#8115#8114#8113. Review/merge the base PRs first; bases retarget down the stack as they merge. PR #8120 (subscriptions/consumers/misc) stacks on top of this one.

Tests that toggled these via state.set_config(...) now use sentry_options.testing.override_options(...).

Verification

ruff check + ruff format --check clean; mypy clean on all 39 changed files; 57 redis-backed cache/processor/delete tests pass locally. The integration tests need ClickHouse (not in the sandbox) and are covered by CI.

🤖 Generated with Claude Code

…y-options

Consolidated slice covering the query-execution path, result cache, and the
lightweight-delete path. These are grouped together because the broad API
integration tests (test_api, test_search_issues_api, test_db_query,
test_lw_deletions) toggle config keys read by source files across all three
areas; splitting them further would leave an intermediate PR with a migrated
read but a not-yet-converted test, so they must land together.

Source areas: db_query, ClickHouse HTTP/native clients, result cache, physical
query processors (clickhouse settings override, mapping optimizer, uniq),
SnQL parser limits + function validator, low-cardinality processor, cluster
selector, optimize util, the errors read-only storage selector, query-log COGS
sampling, request consistency override, and the lw_deletions off-peak scheduler,
delete strategy, and bulk/single delete query paths.

Schema defaults match the prior get_*_config defaults (incl. sentinel-0 override
semantics for optimize_parallel_threads / http_batch_join_timeout), so behavior
is unchanged until set in sentry-options-automator.

Tests that toggled these via state.set_config(...) now use
sentry_options.testing.override_options(...).

Stacked on the replacer migration PR.

Co-Authored-By: Claude Opus 4.8 <[email protected]>
Claude-Session: https://claude.ai/code/session_01U2Cu68uGZRcCVS14jcyd3E
@phacops phacops force-pushed the claude/options-migration-deletes branch from 6b5439c to f4a49fa Compare June 26, 2026 23:53
@phacops phacops changed the title ref(options): migrate delete (lw_deletions) runtime config to sentry-options ref(options): migrate query-execution, cache & delete config to sentry-options Jun 26, 2026
…migration-deletes

# Conflicts:
#	tests/clickhouse/test_native.py
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants