feat: Add setting to force enable/disable text index support for a source#2277
feat: Add setting to force enable/disable text index support for a source#2277pulpdrew wants to merge 1 commit into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
🦋 Changeset detectedLatest commit: 4d1ece1 The changes in this PR will be included in the next version bump. This PR includes changesets to release 5 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
🔴 Tier 4 — CriticalTouches auth, data models, config, tasks, OTel pipeline, ClickHouse, or CI/CD. Why this tier:
Review process: Deep review from a domain expert. Synchronous walkthrough may be required. Stats
|
PR Review✅ No critical issues found. A few minor observations (non-blocking):
Test coverage looks solid: source-router CRUD/validation tests plus 7 queryParser tests covering auto-with-index, auto-without-index, enabled-without-index, enabled-with-disabled-setting, disabled-with-index, disabled-with-bloom-filter, and enabled-with-separator-fallback. |
Deep Review✅ No critical issues found. The diff is additive, backward-compatible (omitted field defaults to 🟡 P2 — recommended
🔵 P3 nitpicks (8)
Reviewers (7): correctness, testing, maintainability, project-standards, kieran-typescript, api-contract, data-integrity Testing gaps:
|
E2E Test Results✅ All tests passed • 178 passed • 3 skipped • 1201s
Tests ran across 4 shards in parallel. |
583106b to
4d1ece1
Compare
Summary
This PR adds a new source setting which allows for force-enabling or force-disabling text index support (generation of hasAllToken conditions for lucene implicit column search) for the source.
This is useful when
The default and recommended behaviour is still
auto- where the index is detected at query time.Screenshots or video
Merge engine based schema
With this schema, using the default (auto) setting will result in
hasToken(lower(Body), token)conditions which don't use the text index effectively due to thelower()function:When force-enabled, the same query will now use the correct hasAllToken syntax:
How to test on Vercel preview
This can be tested locally by creating a schema similar to the one provided above.
References