Repository navigation
Decode embedded language JSON into final owned storage - #1128
Merged
Merged
Conversation
This was referenced Nov 7, 2026
…blication' into perf/direct-language-json-storage
This was referenced Nov 7, 2026
Base automatically changed from
perf/o22-transactional-record-publication
to
main
November 7, 2026 07:02
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Decode the lazily loaded language database into its final string and move that owned result into static storage. This removes an intermediate buffer and copies while preserving decoding errors and view lifetime. Current command controls do not establish a material startup speedup.
AG;DR
Implementation
std::string::resize_and_overwrite, feeding final storage directly to the existing Brotli decoder. The narrowly annotated C pointer adapter remains within the decoder callback; publish only successfully written bytes, and publish no unwritten destination bytes after failure.DataLosserrors. Add committed valid-empty and undersized-destination coverage alongside existing invalid-data and length tests. Use the mutableStatusOr<string>only to move its owned value into the existing lazy static string; returned views remain backed by that static owner.Measured evidence and limits
docs/benchmarks/language-json-storage-20261107.mdand its 154,700-byte.json.gzpreserve 108 source/raw/log records; SHA-25659d7645aea9397b4bba4443a903e5e3dfd295ca590ac2333a4f816288ab431d8.Integration and publication
92469874d258200a1e07fcbabcc9c8b150602294, including its demonstrated one-blank-line Trunk correction. Merge Reuse validated rg output transactions in matcher results #1127 first, then synchronize/revalidate this child in its actual main context. Runtime module paths are independent of O22, but shared tracking/release publication overlap is preserved through this ancestry.filesdownload mapping. The gzip is below the large-file threshold, so no additional exception is introduced. No existing evidence/history is removed.Validation
The private current-main implementation passed all 323 documented core/registered-extension release targets on each host, three focused canonical ASan targets on both, and the same three under Linux MSan. Linux real FUSE is required. Actual-source/image receipts and raw results are retained. A sandbox cache-write setup failure before Bazel analysis is preserved separately.
The successor integration on #1127's initial c4d head passed the three optimized language targets on Mac with verified identical module inputs. The subsequent ancestor correction removes only an unrelated blank line; all three module files and evidence bytes remain exact. This is development validation, not a substitute for this PR's own current-head GCC, coverage, sanitizers, CI clang-tidy, benchmark aggregate and required gates. No local clang-tidy is run, as requested by the user. Exact changed-file Trunk passed (eight supported text/source files; gzip content identity was checked independently), along with canonical Markdown table formatting, release-site configuration and diff checks. Normal signed commit
081d5be6627d004f2983837d1221399559e36910and normal push succeeded with all configured commit/push hooks enabled and payload hashes unchanged. No local clang-tidy executable ran: the existing hook returned cleanly at its mandatory missing-compile-database guard before any Bazel/toolchain lookup. CI clang-tidy remains required. The user-requested skip was also supplied to the normal Git environment; no hook or protection was disabled.CI clang-tidy identified the required
char-storage to Brotliuint8_tbyte-pointer cast. A narrowNOLINTNEXTLINE(cppcoreguidelines-pro-type-reinterpret-cast)now documents that single C-ABI conversion; decoding still writes directly into the final string, with no additional copy or allocation. Scoped formatting, changed-file hooks explicitly skipping local clang-tidy, and normal signed commit/push hooks passed. The parent’s three real CI lint corrections are incorporated through a signed synchronization that was pushed immediately before the ABI annotation commit. Actual CI clang-tidy and all current-head required checks must pass in this PR context; no archived or parent checks substitute for them. Original measurement evidence remains immutable.Current main synchronization
#1127 merged unchanged as
1786340680499f50b08dee5b1ceffbc20fd7b533. After automatic retargeting, synchronized this PR to that actual main with signed merge334cc891bbdfb2b297cc3d874c368466a31c6942, pushed immediately after normal hooks. The full resulting Git tree is identical to the prior qualifiedd89fa1d75b38a5303c498e2d66045e05c3492620tree: three adjacent documentation conflicts preserved the child content after proving the squash tree exactly matched its already-included parent. No runtime or evidence bytes changed. GitHub initially rejected verified signatures transiently; after its API confirmed both commits verified, the unchanged normal push succeeded, without a rewrite or protection bypass. Fresh own main-context checks on this pushed head are required; the earlier stacked run's success is not substituted.