-
Notifications
You must be signed in to change notification settings - Fork 3
batch large file-identity lookups before SQLite bind limit #1237
Copy link
Copy link
Closed
3 / 43 of 4 issues completedClosed
3 / 43 of 4 issues completed
Copy link
Labels
bugSomething isn't workingSomething isn't workingepic:performance-opsPerformance, scale, sidecar SLA, and artifact operationsPerformance, scale, sidecar SLA, and artifact operationsphase:promotion-readinessPromotion readiness and post-contract proof wavePromotion readiness and post-contract proof wavepriority:p1Release blocker or high-risk reliability/security issueRelease blocker or high-risk reliability/security issuerisk:publishable-blockerBlocks publishable benchmark or product claim readinessBlocks publishable benchmark or product claim readinessrustPull requests that update rust codePull requests that update rust codesaga:codestory-intelligenceCodeStory product-grade intelligence sagaCodeStory product-grade intelligence sagatype:contractRuntime, CLI, API, or evidence contract workRuntime, CLI, API, or evidence contract work
Description
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't workingepic:performance-opsPerformance, scale, sidecar SLA, and artifact operationsPerformance, scale, sidecar SLA, and artifact operationsphase:promotion-readinessPromotion readiness and post-contract proof wavePromotion readiness and post-contract proof wavepriority:p1Release blocker or high-risk reliability/security issueRelease blocker or high-risk reliability/security issuerisk:publishable-blockerBlocks publishable benchmark or product claim readinessBlocks publishable benchmark or product claim readinessrustPull requests that update rust codePull requests that update rust codesaga:codestory-intelligenceCodeStory product-grade intelligence sagaCodeStory product-grade intelligence sagatype:contractRuntime, CLI, API, or evidence contract workRuntime, CLI, API, or evidence contract work
Projects
StatusShow more project fields
Done
Parent: #1202
Root: #1179
Release: v0.16.0
Failure
On
dev/codestory-nextatea3cd4d5dd4c1a7841aaa5bea3f06ab147530f4a, a clean full index of a 94,523-file Linux corpus fails before publication with SQLite'stoo many SQL variableserror.The failing path is
Indexer::get_existing_file_idsthroughStorage::get_node_kinds_for_files. The storage method builds one unbounded query with two placeholder lists:At this corpus size it supplies roughly 189,046 parameters. The same full-index command succeeds against a separate clean current-source control, so the defect is scale-dependent rather than an environment or cache failure.
Expected
Full indexing should handle a repository-sized candidate set without exceeding SQLite's bind-variable limit. Batch this lookup or use a temporary relation while preserving its existing file-identity semantics.
Acceptance criteria
Release decision
This correction is required for v0.16. #1237, #1202, and #1196 remain in the milestone; schedule pressure or an inconclusive backend experiment does not defer them. This issue restores the approved large-corpus publication input and does not select a vector backend.
Non-goals