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

jallum / bedrock / 022bf889f44fabf5818028244ac5e8e953e1a798
65%

Build:
DEFAULT BRANCH: develop
Ran 18 Aug 2025 02:01AM UTC
Jobs 1
Files 155
Run time 1min
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

18 Aug 2025 02:00AM UTC coverage: 62.424% (+2.5%) from 59.888%
022bf889f44fabf5818028244ac5e8e953e1a798

push

github

web-flow
Feature/31 (#35)

# Major Transaction System Overhaul

This branch represents a **fundamental rearchitecture of Bedrock's
transaction processing system** with three main
phases of development spanning performance, unification, reliability,
and architectural improvements.

  ## Phase 1: Transaction Format Unification (fd66e2d)
**Rationale**: Replace the fragmented, inconsistent transaction encoding
system with a unified, robust approach.

  **Key Changes**:
- **Consolidated Transaction Format**: Merged `read_conflicts` and
`read_version` into a single tuple format,
  eliminating redundancy
- **New BedrockTransaction Module**: Replaced the limited
`EncodedTransaction` with a comprehensive 971-line module
  featuring:
    - Tagged binary encoding with self-describing sections
    - CRC validation for data integrity
    - Order-independent sections for better extensibility
    - Efficient partial decoding capabilities
- **Removed Legacy Code**: Eliminated obsolete resolver recovery logic
and transaction fragmentation
- **Comprehensive Testing**: Added extensive test coverage including
binary integration tests

  ## Phase 2: Enhanced Transaction Processing (f96a1ed)
**Rationale**: Address reliability and robustness gaps in transaction
handling.

  **Key Improvements**:
- **Transaction Validation**: Added validation in resolver to ensure
proper transaction format before processing
- **Timeout Management**: Implemented `WaitingList` module for
systematic timeout handling across components
- **Error Resilience**: Enhanced error handling for Director
notifications and unavailable states
- **Standardization**: Moved Logger.require statements to module level
for consistency

  ## Phase 3: Commit Proxy Rework & System-Wide Improvements (dc6a048)
**Rationale**: Optimize transaction distribution and improve
observability across the data plane.

  **Major Architectural Changes**:
- **Single Transaction Per Log**: Reworked commit proxy to produce one
transaction per ... (continued)

817 of 1213 new or added lines in 110 files covered. (67.35%)

40 existing lines in 21 files now uncovered.

2369 of 3795 relevant lines covered (62.42%)

871.02 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
1
0.0
0.0% lib/bedrock.ex
1
46.94
0.0% lib/bedrock/cluster/gateway/discovery.ex
1
0.0
0.0% lib/bedrock/cluster/gateway/minimum_read_versions.ex
1
96.88
0.1% lib/bedrock/cluster/gateway/server.ex
1
0.0
0.0% lib/bedrock/cluster/pub_sub.ex
1
50.0
0.0% lib/bedrock/control_plane/config/parameters.ex
1
35.29
0.0% lib/bedrock/control_plane/coordinator/commands.ex
1
87.64
0.0% lib/bedrock/control_plane/coordinator/disk_raft_log.ex
1
0.0
0.0% lib/bedrock/control_plane/coordinator/raft_adapter.ex
1
67.39
0.0% lib/bedrock/control_plane/director/recovery.ex
1
66.67
-0.57% lib/bedrock/control_plane/director/recovery/tracing.ex
1
0.0
0.0% lib/bedrock/data_plane/proxy.ex
1
87.5
6.25% lib/bedrock/data_plane/resolver/transaction_conflicts.ex
1
85.71
lib/bedrock/data_plane/resolver/validation.ex
1
92.31
2.31% lib/bedrock/data_plane/storage/basalt/keyspace.ex
1
85.0
-1.11% lib/bedrock/data_plane/storage/basalt/persistent_key_values.ex
1
28.57
0.0% lib/bedrock/internal/timer_management.ex
1
86.67
0.0% lib/bedrock/key_codec/tuple_key_codec.ex
1
0.0
0.0% lib/mix/bedrock.ex
2
88.46
-1.54% lib/bedrock/cluster/gateway/transaction_builder/fetching.ex
2
97.22
lib/bedrock/cluster/gateway/transaction_builder/tx.ex
2
0.0
0.0% lib/bedrock/control_plane/director/changing_parameters.ex
2
85.71
0.0% lib/bedrock/control_plane/director/recovery/locking_phase.ex
2
68.29
-0.75% lib/bedrock/control_plane/director/recovery/log_recruitment_phase.ex
2
89.09
0.2% lib/bedrock/control_plane/director/recovery/persistence_phase.ex
2
20.0
0.0% lib/bedrock/data_plane/commit_proxy/batch.ex
2
83.33
-0.67% lib/bedrock/data_plane/log/shale/pulling.ex
2
77.78
lib/bedrock/data_plane/resolver/telemetry.ex
2
0.0
0.0% lib/bedrock/repo.ex
2
0.0
0.0% lib/mix/tasks/bedrock.config.ex
3
76.67
2.47% lib/bedrock/cluster/gateway/transaction_builder.ex
3
57.14
-42.86% lib/bedrock/cluster/gateway/transaction_builder/putting.ex
3
63.64
-1.2% lib/bedrock/control_plane/director/recovery/storage_recruitment_phase.ex
3
62.26
0.36% lib/bedrock/data_plane/log/shale/recovery.ex
3
62.75
-0.72% lib/bedrock/data_plane/log/shale/segment_recycler.ex
3
77.27
1.72% lib/bedrock/data_plane/storage/basalt/database.ex
3
86.21
1.21% lib/bedrock/data_plane/storage/basalt/multi_version_concurrency_control.ex
3
12.5
1.39% lib/bedrock/service/foreman/state.ex
3
0.0
0.0% lib/mix/tasks/bedrock.status.ex
4
0.0
0.0% lib/bedrock/cluster/gateway/tracing.ex
4
29.73
0.0% lib/bedrock/control_plane/coordinator/director_management.ex
4
12.0
0.0% lib/bedrock/control_plane/coordinator/state.ex
4
0.0
0.0% lib/bedrock/control_plane/coordinator/tracing.ex
4
0.0
0.0% lib/bedrock/control_plane/director/recovery/initialization_phase.ex
4
11.76
0.0% lib/bedrock/data_plane/commit_proxy/batching.ex
4
82.61
20.84% lib/bedrock/data_plane/log/shale/transaction_streams.ex
4
0.0
0.0% lib/bedrock/service/foreman/starting_workers.ex
5
11.11
0.0% lib/bedrock/control_plane/config.ex
5
79.31
19.66% lib/bedrock/data_plane/log/shale/server.ex
7
50.0
0.0% lib/bedrock/data_plane/log/shale/segment.ex
7
82.61
45.57% lib/bedrock/data_plane/resolver/server.ex
8
0.0
0.0% lib/bedrock/control_plane/director/nodes.ex
8
33.33
0.0% lib/bedrock/control_plane/director/server.ex
8
91.01
-4.15% lib/bedrock/data_plane/commit_proxy/finalization.ex
8
30.77
-0.3% lib/bedrock/internal/cluster_supervisor.ex
9
62.07
26.07% lib/bedrock/data_plane/log/shale/pushing.ex
9
0.0
0.0% lib/bedrock/data_plane/storage/tracing.ex
10
0.0
lib/bedrock/data_plane/sequencer/tracing.ex
10
24.68
0.93% lib/bedrock/service/foreman/impl.ex
12
0.0
0.0% lib/bedrock/control_plane/director/recovery/resolver_startup_phase.ex
13
40.74
-9.26% lib/bedrock/data_plane/storage/basalt/server.ex
14
0.0
0.0% lib/bedrock/service/foreman/server.ex
15
7.46
-0.23% lib/bedrock/control_plane/coordinator/durability.ex
17
40.35
-0.83% lib/bedrock/data_plane/commit_proxy/server.ex
22
0.0
lib/bedrock/data_plane/resolver/tracing.ex
29
35.85
-20.03% lib/bedrock/data_plane/storage/basalt/logic.ex
32
7.07
-0.07% lib/bedrock/control_plane/coordinator/server.ex
48
77.88
lib/bedrock/data_plane/transaction.ex

Uncovered Existing Lines

Lines Coverage ∆ File
1
46.94
0.0% lib/bedrock/cluster/gateway/discovery.ex
1
55.93
0.0% lib/bedrock/control_plane/config/tsl_type_validator.ex
1
7.07
-0.07% lib/bedrock/control_plane/coordinator/server.ex
1
0.0
0.0% lib/bedrock/control_plane/director/changing_parameters.ex
1
0.0
0.0% lib/bedrock/control_plane/director/recovery/initialization_phase.ex
1
66.67
0.0% lib/bedrock/control_plane/director/recovery/log_replay_phase.ex
1
0.0
0.0% lib/bedrock/control_plane/director/recovery/resolver_startup_phase.ex
1
33.33
0.0% lib/bedrock/control_plane/director/server.ex
1
20.0
0.0% lib/bedrock/data_plane/commit_proxy/batch.ex
1
11.76
0.0% lib/bedrock/data_plane/commit_proxy/batching.ex
1
62.75
-0.72% lib/bedrock/data_plane/log/shale/segment_recycler.ex
1
40.74
3.7% lib/bedrock/data_plane/version.ex
2
7.46
-0.23% lib/bedrock/control_plane/coordinator/durability.ex
2
63.64
-1.2% lib/bedrock/control_plane/director/recovery/storage_recruitment_phase.ex
2
66.67
-0.57% lib/bedrock/control_plane/director/recovery/tracing.ex
2
91.01
-4.15% lib/bedrock/data_plane/commit_proxy/finalization.ex
2
30.77
-0.3% lib/bedrock/internal/cluster_supervisor.ex
3
0.0
0.0% lib/bedrock/cluster/pub_sub.ex
3
40.35
-0.83% lib/bedrock/data_plane/commit_proxy/server.ex
4
62.26
0.36% lib/bedrock/data_plane/log/shale/recovery.ex
8
0.0
0.0% lib/bedrock/internal/tracing/raft_telemetry.ex
Jobs
ID Job ID Ran Files Coverage
1 022bf889f44fabf5818028244ac5e8e953e1a798.1 18 Aug 2025 02:01AM UTC 155
62.42
GitHub Action Run
Source Files on build 022bf889f44fabf5818028244ac5e8e953e1a798
  • Tree
  • List 155
  • Changed 117
  • Source Changed 0
  • Coverage Changed 117
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 022bf889 on github
  • Prev Build on develop (#08B7A840...)
  • Next Build on develop (#EBC7A52F...)
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