Skip to content

perf(sqlite): eliminate redundant double string conversion pass in SqliteSqlExecutionDelegate - #1407

Merged
ZhuchkaTriplesix merged 1 commit into
devfrom
issue/1354-sqlite-single-pass-row-conversion
Oct 10, 2026
Merged

ZhuchkaTriplesix merged 1 commit into
devfrom
issue/1354-sqlite-single-pass-row-conversion

Conversation

@ZhuchkaTriplesix

Copy link
Copy Markdown
Member

Closes #1354

Summary

  1. Eliminates the second full-matrix pass in SqliteSqlExecutionDelegate.executeQuery where already-stringified cells were passed into convertResultRowsToStringsAdaptive.
  2. Introduces convertSqliteResultRowsToStringsAdaptive in sqlite_result_utils.dart to perform a single typed pass with StringInternPool deduplication and event-loop yielding.
  3. Added unit tests in result_conversion_perf_test.dart verifying parity with synchronous conversion, string interning for repeated values, and hex blob formatting.

@github-actions github-actions Bot added performance Theme parser epic label: performance sqlite SQLite database driver and workspace backend Backend database driver execution and queries P2 Medium priority / Parity & Refactoring labels Oct 10, 2026
@ZhuchkaTriplesix
ZhuchkaTriplesix merged commit 37ee82d into dev Oct 10, 2026
13 checks passed
@ZhuchkaTriplesix
ZhuchkaTriplesix deleted the issue/1354-sqlite-single-pass-row-conversion branch October 11, 2026 15:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backend Backend database driver execution and queries P2 Medium priority / Parity & Refactoring performance Theme parser epic label: performance sqlite SQLite database driver and workspace

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant