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

iotaledger / iota / 17568988330
63%

Build:
DEFAULT BRANCH: develop
Ran 09 Sep 2025 04:02AM UTC
Jobs 1
Files 1420
Run time 4min
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

08 Sep 2025 11:59AM UTC coverage: 65.675% (-0.2%) from 65.835%
17568988330

push

github

web-flow
feat(indexer): Merge optimistic indexing feature branch to develop (#8460)

# Description of change

The PR introduces optimistic indexing feature to iota-indexer.

From now, transactions and it's effects will be indexed immediately
after they are executed through the indexer, without waiting for the
checkpoint.

 - Transactions will be stored in new `optimistic_transactions` table
 - Objects will be stored in already existing `objects` table
- `tx_global_order` table will be used to store indexing order (could be
used later to serve consistent paginated queries) and also as a
synchronization table to avoid race conditions between optimistic and
checkpoint indexing

Data from new `optimistic_transactions` table will be read by simple
queries like: `get_transaction_block`, `multi_get_transaction_blocks`,
`get_events`.
It will also be used by TransactionBuilder API, allowing user to
construct follow-up transactions without need to wait for checkpoint
indexing of previous transactions.

It will not be read by more complex (filtered/paginated) queries like:
`query_transaction_blocks`.

## Links to any relevant issues

fixes [#6606](https://github.com/iotaledger/iota/issues/6606)

## How the change has been tested

- [x] Basic tests (linting, compilation, formatting, unit/integration
tests)
- [x] Patch-specific tests (correctness, functionality coverage)

### Infrastructure QA (only required for crates that are maintained by
@iotaledger/infrastructure)

- [x] Synchronization of indexer from scratch after DB reset on staging
env
- [ ] Synchronization of the indexer from genesis for a network
including migration objects.
- [x] Restart of indexer synchronization locally without resetting the
database.
- [x] Restart of indexer synchronization on a production-like database.
- [x] Deployment of services using Docker. _(running iota-indexer
container on staging env)_
- [x] Verification of API backward compatibility.

### Release Notes

- [ ] Protocol:
- [ ] Nodes... (continued)

0 of 1368 new or added lines in 17 files covered. (0.0%)

78 existing lines in 17 files now uncovered.

228751 of 348305 relevant lines covered (65.68%)

2262949.27 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
5
0.0
0.0% crates/iota-indexer/src/apis/read_api.rs
6
0.0
0.0% crates/iota-indexer/src/apis/indexer_api.rs
6
0.0
0.0% crates/iota-indexer/src/indexer.rs
6
0.0
0.0% crates/iota-indexer/src/test_utils.rs
9
0.0
0.0% crates/iota-indexer/src/main.rs
16
0.0
0.0% crates/iota-indexer/src/handlers/checkpoint_handler.rs
17
35.52
-1.59% crates/iota-indexer/src/models/objects.rs
24
0.0
0.0% crates/iota-indexer/src/store/mod.rs
28
0.0
crates/iota-indexer/src/rolling/extract.rs
36
0.0
0.0% crates/iota-indexer/src/models/transactions.rs
37
0.0
0.0% crates/iota-indexer/src/apis/write_api.rs
41
0.0
0.0% crates/iota-indexer/src/lib.rs
58
0.0
crates/iota-indexer/src/rolling/persist.rs
103
0.0
crates/iota-indexer/src/rolling/transform.rs
264
0.0
0.0% crates/iota-indexer/src/indexer_reader.rs
290
0.0
crates/iota-indexer/src/optimistic_indexing.rs
422
0.0
0.0% crates/iota-indexer/src/store/pg_indexer_store.rs

Uncovered Existing Lines

Lines Coverage ∆ File
1
91.18
0.0% crates/iota-cluster-test/src/test_case/native_transfer_test.rs
1
66.36
-0.47% crates/iota-core/src/test_authority_clients.rs
1
0.0
0.0% crates/iota-indexer/src/apis/indexer_api.rs
1
0.0
0.0% crates/iota-indexer/src/apis/read_api.rs
1
0.0
0.0% crates/iota-indexer/src/test_utils.rs
1
89.14
-0.14% crates/iota-network/src/state_sync/mod.rs
2
89.35
-0.34% crates/iota-core/src/connection_monitor.rs
2
54.88
-0.45% crates/iota-core/src/storage.rs
3
79.61
0.0% crates/starfish/core/src/network/tonic_network.rs
4
65.0
-1.54% crates/iota-types/src/messages_consensus.rs
5
91.52
0.49% consensus/core/src/synchronizer.rs
5
92.08
-0.73% crates/iota-core/src/transaction_manager.rs
6
0.0
0.0% crates/iota-indexer/src/indexer_reader.rs
9
0.0
0.0% crates/iota-indexer/src/store/pg_indexer_store.rs
11
91.36
-1.27% crates/iota-core/src/consensus_adapter.rs
11
0.0
-37.93% crates/iota-types/src/storage/error.rs
14
59.69
-0.64% crates/iota-core/src/authority/authority_store_pruner.rs
Jobs
ID Job ID Ran Files Coverage
1 nextest+simtest - 17568988330.1 09 Sep 2025 04:02AM UTC 1422
65.66
GitHub Action Run
Source Files on build 17568988330
  • Tree
  • List 1420
  • Changed 48
  • Source Changed 21
  • Coverage Changed 47
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #17568988330
  • ad0fd5e6 on github
  • Prev Build on develop (#17536992299)
  • Next Build on develop (#17600306335)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc