• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

iotaledger / iota / 31919687752
70%

Build:
DEFAULT BRANCH: develop
Ran 16 Aug 2026 02:21AM UTC
Jobs 1
Files 1062
Run time 2min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

14 Aug 2026 01:02PM UTC coverage: 69.699% (-0.02%) from 69.715%
31919687752

push

github

web-flow
feat(core+network): state sync improvements (#12455)

# Description of change

Speeds up catch-up from the checkpoint archive, bounds the disk it can
take up while doing so, and makes the checkpoint execution pipeline's
bottleneck visible. Six independent changes:

**Archive sync: verify in parallel, insert in batches** (`iota-network`,
`iota-storage`, `iota-types`, `iota-core`)

- The archive sync worker pool ran a single worker that verified
authority signatures, verified content digests, and inserted each
checkpoint sequentially — capping sync at roughly one core. Workers now
run in parallel (new `verify-concurrency` config, default: CPU cores)
and do only the order-independent verification; a new reducer receives
the results in sequence order, chain-checks each against its
predecessor, and inserts them.
- Checkpoints at the head of an epoch can reach a worker before the
previous epoch's last checkpoint is committed, so their committee isn't
in the store yet. Signature verification for those is deferred to the
reducer, where the committee is guaranteed to be available, and runs as
one batched signature verification per epoch (new
`CertifiedCheckpointSummary::batch_verify_authority_signatures`, which
falls back to verifying one by one so a failure still names the
checkpoint).
- A worker's signature and digest verification runs in `spawn_blocking`:
with one worker per core it would otherwise hold up checkpoint execution
on the same runtime, and execution progress gates how far sync may run
ahead.
- The reducer commits up to 500 checkpoints per store insertion via a
new `WriteStore::try_insert_synced_checkpoints`. The `RocksDbStore`
override writes all summaries in one batch, all contents rows in one
batch, and the synced watermark once per batch — still notifying waiters
of every checkpoint, which the checkpoint executor relies on. The
default trait implementation keeps the one-at-a-time behaviour for other
stores.
- Batches close at epoch boundaries... (continued)

321 of 488 new or added lines in 11 files covered. (65.78%)

538 existing lines in 25 files now uncovered.

169447 of 243111 relevant lines covered (69.7%)

467070.16 hits per line

Uncovered Changes

Lines Coverage ∆ File
57
16.17
0.0% crates/iota-types/src/storage/write_store.rs
50
58.54
0.0% crates/iota-network/src/state_sync/worker.rs
43
78.37
0.44% crates/iota-core/src/storage.rs
8
83.81
0.0% crates/iota-config/src/node.rs
7
82.48
0.17% crates/iota-core/src/checkpoints/mod.rs
1
92.92
0.0% crates/iota-core/src/checkpoint_progress_tracker.rs
1
91.05
0.11% crates/iota-network/src/state_sync/mod.rs

Coverage Regressions

Lines Coverage ∆ File
189
82.48
0.17% crates/iota-core/src/checkpoints/mod.rs
78
91.05
0.11% crates/iota-network/src/state_sync/mod.rs
49
16.17
0.0% crates/iota-types/src/storage/write_store.rs
40
83.81
0.0% crates/iota-config/src/node.rs
40
89.4
0.0% crates/iota-types/src/messages_checkpoint.rs
24
78.37
0.44% crates/iota-core/src/storage.rs
21
94.72
0.0% crates/iota-core/src/checkpoints/checkpoint_executor/mod.rs
20
87.54
0.0% crates/iota-core/src/checkpoints/checkpoint_executor/utils.rs
15
72.34
0.0% crates/iota-storage/src/lib.rs
14
89.69
-4.81% crates/iota-core/src/connection_monitor.rs
10
66.98
-0.84% crates/iota-core/src/authority/authority_store.rs
7
92.92
0.0% crates/iota-core/src/checkpoint_progress_tracker.rs
7
79.25
-1.1% crates/iota-types/src/crypto.rs
7
95.67
-0.38% crates/starfish/core/src/transactions_synchronizer.rs
3
83.69
-0.59% crates/iota-core/src/authority_server/validator_v2.rs
3
91.39
-0.19% crates/iota-core/src/execution_cache/writeback_cache.rs
3
75.47
-0.14% crates/iota-network/src/randomness/mod.rs
1
86.11
-2.78% crates/iota-cluster-test/src/test_case/native_transfer_test.rs
1
98.62
-0.28% crates/iota-core/src/signature_verifier.rs
1
28.42
-0.53% crates/iota-core/src/transaction_driver/error.rs
1
95.11
-0.54% crates/iota-core/src/transaction_driver/mod.rs
1
89.1
-0.14% crates/iota-network/src/discovery/mod.rs
1
58.54
0.0% crates/iota-network/src/state_sync/worker.rs
1
94.9
-0.04% crates/starfish/core/src/authority_service.rs
1
98.18
-0.1% crates/starfish/core/src/cordial_knowledge.rs
Jobs
ID Job ID Ran Files Coverage
1 nextest+simtest - 31919687752.1 16 Aug 2026 02:21AM UTC 1062
69.7
GitHub Action Run
Source Files on build 31919687752
  • Tree
  • List 1062
  • Changed 21
  • Source Changed 0
  • Coverage Changed 21
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #31919687752
  • 0623ddd7 on github
  • Prev Build on develop (#31856637700)
  • Next Build on develop (#31985103434)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc