Conversation
Capture canonical block metadata and materialize reverse diffs from completed block snapshots. Classify archive state stores explicitly and project account-asset companion mutations before root merge.
Add deterministic history body and index records, ordered durable commit markers, and bounded asynchronous persistence. Gate checkpoint advancement on committed archive history and cover crash, corruption, backpressure, and reorg behavior.
Persist reverse state history with bounded append-only body, index, and commit structures. Wire an opt-in archive writer into snapshot flush and add restart-safe account change indexing. Expose an experimental historical account balance endpoint for trace comparison.
Persist bounded restart checkpoints, truncation recovery, H/C/D/R progress authorities, and immutable serving generations. Pin committed history resources and fail closed on identity or durability drift.
Add durable engine identities and native LevelDB/RocksDB snapshot leases. Assemble exact Store generations under the SnapshotManager barrier and release partial acquisitions on authority drift.
Apply business mutations with participant progress in native sync batches. Freshly validate H/C/D authorities under the archive barrier and advance reader visibility only after exact convergence.
Unify LevelDB and RocksDB participants behind one recovery contract. Persist canonical mutation plans and bind checkpoint, participant, and reader progress to the same digest.
Collect exact ordinary and AccountAsset post-state without Store scans. Enforce target identity, bounded ownership, one-shot sealing, abort, and terminal payload release.
Drive an exact-27 capture batch through mixed native participants, inject a partial apply failure, and verify durable-plan replay, digest propagation, ownership, and restart convergence.
Apply two capture-produced targets through exact-27 participants. Verify per-target plan digests, overwrite and delete semantics, partial replay boundaries, reader publication, and restart convergence.
Prepare one target-bound Account and AccountAsset projection before snapshot merge, retain its forward payload through the revoking lifecycle, and seal it only against durable history markers. Keep the integration default-off and preserve the existing proposal 66 physical layout.
Classify ABI as mutable auxiliary metadata outside the versioned state participant set while retaining an explicit tombstone classification.
Exercise proposal-bound projection, layer-to-flush ownership, durable marker sealing, retry and reorg boundaries, exact participant coverage, and ABI exclusion.
Expose durable marker receipt creation through direct and asynchronous history sinks, then gate forward payload sealing on the exact committed flush range. Retain submitted frozen ranges across durability or receipt failures so retries do not resubmit history.
Verify direct and asynchronous receipt authority, disabled behavior, and retry ordering across durable wait and receipt failures without duplicate history submission.
Expose explicit block-final stages with lightweight session commit. Sample account node reads, hash verification, decoding and native reads behind an opt-in flag, and export prepared-attempt metrics with bounded labels.
❌ Math Usage Detection ResultsFound forbidden usage of Please review if this usage is intended. Caution Note: You should use |
❌ Math Usage Detection ResultsFound forbidden usage of Please review if this usage is intended. Caution Note: You should use |
❌ Math Usage Detection ResultsFound forbidden usage of Please review if this usage is intended. Caution Note: You should use |
- halt after five-lane rotation seal and post-rotation marker, verify identity, rebuilt durability proof and zero-action second reopen - halt across common checkpoint wal publish, redo, lost-ack and retire boundaries, verify recovery convergence and no temporary authority - halt with committed common and unpublished serving index, verify replay of (I,W] from durable progress and zero-action restart
- normal reopen trusts catalog-sealed segments after O(1) length, seal frame and manifest checks instead of scanning all history - current segments resume at the durability proof marker chain and only the uncheckpointed tail is scanned; identity rebuilds field-identical to the retained recovery scan - missing, stale or drifting proof, catalog or sealed records fail closed; torn uncheckpointed tails still repair through the explicit recovery scan; no configuration switch is added
restore published-proof conservative scanning and trim recovery; add short-checkpoint replay coverage and a valid Catalog proof fixture
Bind recovery intent to the source and target catalog identities, commit terminal-aware catalog state before reopen, and roll catalog plus five-lane tails back to the exact published Common checkpoint with proof-bounded I/O. Retain legacy catalog and intent compatibility and add crash-boundary, mixed-terminal, short-prefix, and partial-successor coverage.
Retain the remote conservative-recovery commit in branch history while resolving its overlapping implementation and tests to the verified checkpoint-bound recovery path.
Publish an exact source-bound catalog transition when the five archive lanes already match the durable checkpoint but the selected catalog still lags behind. Keep repeated checkpoint reopen zero-action and require catalog binding for mutation-free recovery intents.
Prune obsolete catalog generations after every successful writer recovery or fast reopen. This closes the durable window where CURRENT is committed but process termination interrupts retention cleanup, while preserving fail-closed identity validation before deletion.
Replace the catalog-bound archive writer with five catalogless lanes, segment metadata, bounded recovery, and single-lane point reads.\n\nUse request-height historical reads without a checkpoint-wide lease, keep serving-index construction fail closed, and align the runtime configuration with format version 4.
Add the V5 five-lane block index, compact frame codec, append and reopen lifecycle, single-lane point reads, serving-index integration, and fail-closed file-descriptor admission.\n\nKeep format V4 as the default and require explicit V5 selection with an isolated root and canonical Block Store metadata.
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.
What does this PR do?
Opens the current State Archive implementation and performance evidence for code-difference review only.
Why are these changes required?
The branch contains the current State Archive persistence, recovery, serving, ARM/AMD validation, and performance-tracking changes that need review before any merge decision.
This PR has been tested by:
Follow up
Review only. Keep this PR in Draft; do not merge or enable auto-merge.
Extra details
This PR is intentionally created in the origin fork
bladehan1/java-tron, nottronprotocol/java-tron. No upstream repository or runtime deployment is changed.Summary by cubic
Review-only PR for the State Archive branch. It adds an opt-in archive for durable reverse history, recovery, serving, historical reads, and path-state roots; with archive features disabled, the existing current-state path keeps its current behavior.
State Archive
SELFDESTRUCT,CREATE, andCREATE2.Performance Evidence
rocksdb9.7.4 comparisons while retaining JDK8 controls.Keep this PR in Draft; do not merge or auto-merge.
Written for commit 9c483be. Summary will update on new commits.