tigerbeetle 0.0.38 → 0.0.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/ext/tb_client/tigerbeetle/build.zig +14 -45
- data/ext/tb_client/tigerbeetle/src/build/fetch.zig +112 -0
- data/ext/tb_client/tigerbeetle/src/lsm/compaction.zig +2 -5
- data/ext/tb_client/tigerbeetle/src/lsm/composite_key.zig +4 -1
- data/ext/tb_client/tigerbeetle/src/lsm/forest.zig +56 -29
- data/ext/tb_client/tigerbeetle/src/lsm/manifest_log.zig +2 -24
- data/ext/tb_client/tigerbeetle/src/lsm/tree.zig +7 -8
- data/ext/tb_client/tigerbeetle/src/message_bus.zig +8 -3
- data/ext/tb_client/tigerbeetle/src/stdx/huge_page_allocator.zig +115 -0
- data/ext/tb_client/tigerbeetle/src/stdx/stdx.zig +3 -0
- data/ext/tb_client/tigerbeetle/src/testing/vortex/constants.zig +4 -4
- data/ext/tb_client/tigerbeetle/src/testing/vortex/faulty_network.zig +61 -62
- data/ext/tb_client/tigerbeetle/src/testing/vortex/supervisor.zig +39 -20
- data/ext/tb_client/tigerbeetle/src/tidy.zig +2 -1
- data/ext/tb_client/tigerbeetle/src/tigerbeetle/main.zig +1 -1
- data/ext/tb_client/tigerbeetle/src/vsr/journal.zig +1 -1
- data/ext/tb_client/tigerbeetle/src/vsr/replica.zig +10 -9
- data/lib/tigerbeetle/version.rb +2 -2
- metadata +3 -1
|
@@ -1023,7 +1023,7 @@ pub fn ReplicaType(
|
|
|
1023
1023
|
assert(!self.grid.blocks_missing.repairing_tables());
|
|
1024
1024
|
self.assert_free_set_consistent();
|
|
1025
1025
|
|
|
1026
|
-
log.
|
|
1026
|
+
log.info("{}: state_machine_open_callback: sync_ops={}..{}", .{
|
|
1027
1027
|
self.log_prefix(),
|
|
1028
1028
|
self.superblock.working.vsr_state.sync_op_min,
|
|
1029
1029
|
self.superblock.working.vsr_state.sync_op_max,
|
|
@@ -1456,7 +1456,7 @@ pub fn ReplicaType(
|
|
|
1456
1456
|
};
|
|
1457
1457
|
self.routing.view_change(self.view);
|
|
1458
1458
|
|
|
1459
|
-
log.
|
|
1459
|
+
log.info("{}: init: replica_count={} quorum_view_change={} quorum_replication={} " ++
|
|
1460
1460
|
"release={}", .{
|
|
1461
1461
|
self.log_prefix(),
|
|
1462
1462
|
self.replica_count,
|
|
@@ -1518,6 +1518,7 @@ pub fn ReplicaType(
|
|
|
1518
1518
|
assert(self.journal.header_with_op(self.op) != null);
|
|
1519
1519
|
assert(self.view == self.routing.view);
|
|
1520
1520
|
assert((self.sync_tables == null) == (self.sync_tables_op_range == null));
|
|
1521
|
+
assert(self.commit_min <= self.op);
|
|
1521
1522
|
}
|
|
1522
1523
|
|
|
1523
1524
|
/// Time is measured in logical ticks that are incremented on every call to tick().
|
|
@@ -2563,7 +2564,7 @@ pub fn ReplicaType(
|
|
|
2563
2564
|
});
|
|
2564
2565
|
return;
|
|
2565
2566
|
}
|
|
2566
|
-
log.
|
|
2567
|
+
log.info("{}: on_start_view_change: view={} quorum received (replicas={b:0>6})", .{
|
|
2567
2568
|
self.log_prefix(),
|
|
2568
2569
|
self.view,
|
|
2569
2570
|
self.start_view_change_from_all_replicas.bits,
|
|
@@ -2643,7 +2644,7 @@ pub fn ReplicaType(
|
|
|
2643
2644
|
.complete_valid => |*quorum_headers| quorum_headers.next().?.op,
|
|
2644
2645
|
};
|
|
2645
2646
|
|
|
2646
|
-
log.
|
|
2647
|
+
log.info("{}: on_do_view_change: view={} quorum received", .{
|
|
2647
2648
|
self.log_prefix(),
|
|
2648
2649
|
self.view,
|
|
2649
2650
|
});
|
|
@@ -2696,7 +2697,7 @@ pub fn ReplicaType(
|
|
|
2696
2697
|
}
|
|
2697
2698
|
} else unreachable;
|
|
2698
2699
|
|
|
2699
|
-
log.mark.
|
|
2700
|
+
log.mark.warn("{}: on_do_view_change: lagging primary; forfeiting " ++
|
|
2700
2701
|
"(view={}..{} checkpoint={}..{})", .{
|
|
2701
2702
|
self.log_prefix(),
|
|
2702
2703
|
self.view,
|
|
@@ -3675,7 +3676,7 @@ pub fn ReplicaType(
|
|
|
3675
3676
|
self.primary_abdicate_timeout.reset();
|
|
3676
3677
|
if (self.solo()) return;
|
|
3677
3678
|
|
|
3678
|
-
log.
|
|
3679
|
+
log.warn("{}: on_primary_abdicate_timeout: abdicating (view={})", .{
|
|
3679
3680
|
self.log_prefix(),
|
|
3680
3681
|
self.view,
|
|
3681
3682
|
});
|
|
@@ -3861,7 +3862,7 @@ pub fn ReplicaType(
|
|
|
3861
3862
|
};
|
|
3862
3863
|
assert(!self.grid.free_set.is_free(fault.block_address));
|
|
3863
3864
|
|
|
3864
|
-
log.
|
|
3865
|
+
log.warn("{}: on_grid_scrub_timeout: fault found: " ++
|
|
3865
3866
|
"block_address={} block_checksum={x:0>32} block_type={s}", .{
|
|
3866
3867
|
self.log_prefix(),
|
|
3867
3868
|
fault.block_address,
|
|
@@ -5866,7 +5867,7 @@ pub fn ReplicaType(
|
|
|
5866
5867
|
|
|
5867
5868
|
// Determine the consecutive extent of the log that we can help recover.
|
|
5868
5869
|
// This may precede op_repair_min if we haven't had a view-change recently.
|
|
5869
|
-
const range_min = (
|
|
5870
|
+
const range_min = (self.op + 1) -| constants.journal_slot_count;
|
|
5870
5871
|
|
|
5871
5872
|
const range = self.journal.find_latest_headers_break_between(
|
|
5872
5873
|
range_min,
|
|
@@ -9981,7 +9982,7 @@ pub fn ReplicaType(
|
|
|
9981
9982
|
assert(self.view_headers.command == .start_view);
|
|
9982
9983
|
defer assert(self.log_view >= self.superblock.working.vsr_state.checkpoint.header.view);
|
|
9983
9984
|
|
|
9984
|
-
log.
|
|
9985
|
+
log.info(
|
|
9985
9986
|
"{}: transition_to_normal_from_recovering_head_status: view={}..{} backup",
|
|
9986
9987
|
.{
|
|
9987
9988
|
self.log_prefix(),
|
data/lib/tigerbeetle/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: tigerbeetle
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.39
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Anthony D
|
|
@@ -81,6 +81,7 @@ files:
|
|
|
81
81
|
- ext/tb_client/tigerbeetle/LICENSE
|
|
82
82
|
- ext/tb_client/tigerbeetle/build.zig
|
|
83
83
|
- ext/tb_client/tigerbeetle/src/aof.zig
|
|
84
|
+
- ext/tb_client/tigerbeetle/src/build/fetch.zig
|
|
84
85
|
- ext/tb_client/tigerbeetle/src/build_multiversion.zig
|
|
85
86
|
- ext/tb_client/tigerbeetle/src/cdc/amqp.zig
|
|
86
87
|
- ext/tb_client/tigerbeetle/src/cdc/amqp/protocol.zig
|
|
@@ -226,6 +227,7 @@ files:
|
|
|
226
227
|
- ext/tb_client/tigerbeetle/src/stdx/bounded_array.zig
|
|
227
228
|
- ext/tb_client/tigerbeetle/src/stdx/debug.zig
|
|
228
229
|
- ext/tb_client/tigerbeetle/src/stdx/flags.zig
|
|
230
|
+
- ext/tb_client/tigerbeetle/src/stdx/huge_page_allocator.zig
|
|
229
231
|
- ext/tb_client/tigerbeetle/src/stdx/mlock.zig
|
|
230
232
|
- ext/tb_client/tigerbeetle/src/stdx/prng.zig
|
|
231
233
|
- ext/tb_client/tigerbeetle/src/stdx/radix.zig
|