New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More β†’
Socket
Sign inDemoInstall
Socket

tigerbeetle-node

Package Overview
Dependencies
Maintainers
0
Versions
331
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

tigerbeetle-node - npm Package Versions

23
…
33

0.16.28

Diff

Changelog

Source

TigerBeetle 0.16.28

Released: 2025-02-17

Safety And Performance

  • #2677

    Test misdirected writes in the VOPR.

  • #2711

    Fix a recovery correctness bug caused by a misdirected write in the WAL (discovered by the VOPR in #2677).

  • #2728

    Refactor the tb_client packet interface, hiding private members in an opaque field. Add assertions to enforce expectations for each packet field.

  • #2717

    Fix a Node client crash when it was closed with outstanding requests.

  • #2720

    Flush loopback queue before queueing another prepare_ok.

  • #2730

    Fuzzer weights are now configurable.

  • #2702

    The REPL now uses StaticAllocator on init and deinit.

Features

  • #2716

    tigerbeetle inspect constants now prints a napkin math estimate for the memory usage.

Internals

  • #2719, #2718, #2736

    Update docs with new talks, an updated illustration, and a new Slack invite link.

  • #2724

    Don't expose VSR module to dependents in build.zig.

TigerTracks 🎧

sentientwaffle
published 0.16.27 β€’

Changelog

Source

TigerBeetle 0.16.27

Released: 2025-02-10

Safety And Performance

  • #2700

    Remove redundant calls to IO.init() and IO.deinit() during the format and start commands.

    These redundant calls could lead to an assertion error in the Zig standard library when a failure occurs after the second IO.init().

Features

  • #2701

    Enhance the docs search bar with arrow-key navigation over search results, and folder collapse using the enter key.

Internals

  • #2713

    Add talks from SystemsDistributed '23, P99 CONF '23, Money2020 '24, and SYCL '24.

  • #2710

    Improve CPU utilization of the CFO by spawning fuzzers more frequently.

    Motivated by the measurement that the cumulative CPU was (on average) 40-45% idle.

  • #2709

    Assert zeroed padding for WAL prepares in the VOPR.

  • #2703

    Remove the deprecated version of the start_view message.

    As part of #2600, we rolled out a new on-disk format for the CheckpointState. To avoid bumping the VSR version, we made it so that replicas temporarily send two versions of the start_view message, with both the old and new CheckpointState formats.

  • #2697

    Add fair scheduler to the CFO to avoid starvation of short running fuzzers.

    Earlier, long running LSM fuzzers ended up spending more than their fair share of time on the CPU, with only 1-10% of CFO time being spent on short running VOPR fuzzers.

TigerTracks 🎧

sentientwaffle
published 0.16.26 β€’

Changelog

Source

TigerBeetle 0.16.26

Released: 2025-02-03

Safety And Performance

  • #2681

    Consider blocks and prepares with nonzero padding to be corrupt. Previously blocks asserted zero padding, which can fail due to bitrot.

    Also fix a similar bug in the superblock copy index handling. The copy index is not covered by a checksum, so we must treat it carefully to avoid propagating bad data if it is corrupt.

    VOPR now injects single-bit errors into storage rather than whole-sector errors.

  • #2600

    The current checkpoint process immediately frees all blocks released in the previous checkpoint. This can lead to cluster unavailability by prematurely freeing and overwriting released blocks.

    To fix this, delay freeing blocks until the checkpoint is durable on a commit-quorum, ensuring data integrity and preventing single-replica failures (in a 3 node cluster) from impacting availability.

  • #2692

    When state syncing, replicas would send prepare_oks only up to a point, to ensure they don't falsely contribute to the durability of a non-durable checkpoint they've synced to.

    However, the logic to send these prepare_oks after state sync has finished was missing, which could lead to a situation where a primary was unavailable to advance. Add in the ability to send these prepare_oks after syncing.

  • #2689

    Recently, tb_client was reworked to use OS native signals instead of a socket for delivering cross thread events.

    Fix some incorrect asserts, and add a fuzz test.

Features

Internals

  • #2674

    Allocate the reply buffer in the Go client once the reply has been received. This can save up to 1MB of memory.

  • #2680

    Refactor parts of our CFO, the process responsible for running fuzzers and the VOPR and sending the results to devhub, to better handle OOM in subprocesses and reduce false fuzz failures.

TigerTracks 🎧

sentientwaffle
published 0.16.25 β€’

Changelog

Source

TigerBeetle 0.16.25

Released: 2025-01-27

Safety And Performance

  • #2653

    Avoid considering just-repaired journal headers as faulty during WAL recovery.

  • #2655

    Reduce the minimum exponential backoff delay from 100ms (which is too pessimistic) to 10ms, a value more appropriate for fast networks.

  • #2662

    Introduce a new CheckpointState format on disk, which ensures that blocks released during a checkpoint are freed only when the next checkpoint is durable, solving a known liveness issue. The previous format is still supported and will be removed in a future release to ensure the proper upgrade path.

  • #2605

    Demote a clock skew warning to a debug message when the ping time is legitimately behind the window. On the other hand, assert that the monotonic clock is within the window.

  • #2659

    Workaround to prevent the initialization value for the AOF message from being embedded as a binary resource, saving constants.message_size_max bytes in the executable size!

  • #2654

    Fix a VOPR false positive where it erroneously infers that a replica has lost a prepare that it has acknowledged.

Features

  • #2479, #2663

    New statically generated docs website, featuring many UX improvements while removing tons of dependencies! Check it out at https://docs.tigerbeetle.com/

Internals

  • #2661

    Make the CFO utilize all cores all the time for running tests, pushing updates every 5 minutes.

TigerTracks 🎧

sentientwaffle
published 0.16.23 β€’

Changelog

Source

TigerBeetle 0.16.23

Released: 2025-01-20

TigerBeetle (unreleased)

Released: 2025-01-20

(Unreleased due to CI flake.)

Safety And Performance

  • #2652

    Fix Python client initialization with long address strings.

  • #2614

    Prevent Client IO thread starvation.

  • #2583

    Set prepare/request timeout RTTs dynamically. Previously our backoff was almost always much too high, leading to much lower throughput when ring replication failed.

Features

  • #2580

    Add --clients flag to tigerbeetle benchmark for generating load from multiple concurrent clients.

Internals

  • #2651

    For test/verify only functions, assert constants.verify at compile-time, not runtime.

  • #2650

    Fix flaky Java client test testConcurrentInterruptedTasks.

  • #2646

    Fix VOPR false positive due to smallest_missing_prepare_between bug.

  • #2611

    In clients, add Events for efficient cross-thread notification.

  • #2644, #2648

    Devhub fixes due to Ubuntu/kcov.

TigerTracks 🎧

sentientwaffle
published 0.16.21 β€’

Changelog

Source

TigerBeetle 0.16.21

Released: 2025-01-13

Happy 2025!

Safety And Performance

  • #2637

    Fix multiple VOPR false positives

  • #2632

    Disable costly cache map verification: trust, verify, but mind big-O!

  • #2629

    Improve state sync performance by getting rid of awaiting_checkpoint state.

  • #2624

    Improve VOPR coverage when running out of IOPs.

  • #2593, #2623, #2625, #2626, #2627, #2628

    Improve WAL repair performance.

  • #2613, #2616, #2620, #2622

    Improve replication performance.

  • #2618

    Add simple metrics to the state machine.

Features

  • #2615

    Greatly improve performance of append-only file (AOF). Note that this changes format of AOF on disk.

  • #2641

    Add tigerbeetle inspect constants command to visualize important compile-time parameters.

  • #2630

    Use asynchronous disk IO on Windows (as a reminder, at the moment TigerBeetle server is considered to production-ready only on Linux).

  • #2635

    Add experimental alternative replication topologies (star and closed loop).

Internals

  • #2634

    Move RingBufferType into stdx, TigerBeetle's extended standard library.

  • #2639

    Run go vet on CI.

  • #2631

    Fix tracing compatibility with perfetto.

  • #2564, #2559.

    Make it easier to investigate Vortex runs.

  • #2610

    Correctly calculate the number of results in the Go client. Previously, the answer was correct despite the logic being wrong!

TigerTracks 🎧

sentientwaffle
published 0.16.20 β€’

Changelog

Source

TigerBeetle 0.16.20

Released: 2024-12-27

Safety And Performance

  • #2608

    Improve replication reliability for tiny messages.

Features

  • #2607

    Add info-level logging for basic progress events.

  • #2603

    Add logging and runtime configuration parameters for state sync.

Internals

  • #2604

    Fix fuzz_lsm_scan checkpoint schedule.

TigerTracks 🎧

sentientwaffle
published 0.16.19 β€’

Changelog

Source

TigerBeetle 0.16.19

Released: 2024-12-22

Safety And Performance

  • #2592

    Coalesce LSM tables in memory before writing them to disk. This significantly improves workloads with small batch sizes, that would otherwise churn in the top level of the LSM while incurring heavy write amplification.

Features

  • #2590

    TigerBeetle recently gained the ability to do runtime debug logging with --log-debug. Extend that to other subcommands - not just start.

    Additionally, the Python client now has logs integrated with Python's native logging module, which means no more printing to stderr!

Internals

  • #2591

    Fix broken links to TigerBeetle blog posts, thanks @PThorpe92!

TigerTracks 🎧

sentientwaffle
published 0.16.18 β€’

Changelog

Source

TigerBeetle 0.16.18

Released: 2024-12-19

Safety And Performance

  • #2584

    Our repair can create a feedback loop. Repair requests prepares and headers, but, upon receiving back, we re-trigger repair, which could lead to duplicate repair work.

    To avoid that, make sure that we are not sending more than two repair messages per replica per our repair timeout.

  • #2586

    Trace AOF write duration

  • #2582

    Timeouts with exponential backoff should reset to their original delay when the timeout is stopped.

  • #2577

    Assert against ABA problem during commit.

  • #2578

    Add retry for flock. flocks are cleaned up by the kernel when the file descriptor is closed, but since that file descriptor is used by io_uring, it actually outlives the process itself.

  • #2579

    Fix mlock flag value.

  • #2571

    Don't crash if a round of view changes happened while repairing the pipeline.

Features

  • #2423

    Tab completion in REPL

  • #2566

    Fix --account-count-hot flag.

  • #2576

    Fix multi-debit recipe.

TigerTracks 🎧

TigerBeetle (unreleased)

Released: 2024-12-16

Safety And Performance

  • #2537

    Exit cleanly if the database grows to the maximum size.

  • #2511

    Simulate virtual machine migration in the VOPR.

  • #2561

    Test that Java client behaves correctly when its thread is interrupted.

Features

  • #2540

    tigerbeetle format now automatically generates a random cluster id if it isn't passed on the command line. To avoid operational errors, it is important that each cluster gets a globally unique id.

  • #2558, #2552

    Improve error reporting when a client gets evicted due to a mismatched version.

Internals

  • #2542

    Switch CLI client to static allocation.

  • #2562, #2560

    Run benchmark under sudo to enable memory locking for accurate RSS stats.

  • #2556, #2555

    Remove many false negatives from unused imports tidy check.

TigerTracks 🎧

sentientwaffle
published 0.16.17 β€’

Changelog

Source

TigerBeetle 0.16.17

Released: 2024-12-09

This release includes a correctness fix for the preview API get_account_balances, get_account_transfers, query_accounts, and query_transfers. If your application uses these features it might be affected.

Safety And Performance

  • #2544

    Fix correctness bug which affected the preview get_account_balances, get_account_transfers, query_accounts, and query_transfers queries. Specifically, if several filters are used (that is, several fields in QueryFilter or AccountFilter are set), then some objects might be missing from the result set.

    The underlying data is safely stored in the database, so re-running these queries using the new version of TigerBeetle will give correct results.

  • #2550

    Fix panic in the node client which occurred on eviction.

  • #2534

    Fix incorrect ABI used on aarch64 for the client library. To prevent such issues from cropping up in the future, add aarch64 testing to CI.

  • #2520

    Add extra assertions to verify object cache consistency.

  • #2485

    Implement network fault injection in VΓΆrtex, our non-deterministic whole system simulator.

Features

  • #2539

    Log level can now be specified at runtime.

  • #2538

    Log messages now include UTC timestamp (formatted as per RFC 3339).

Internals

  • #2543

    Relax compiler requirements for building TigerBeetle. While we only support building using one specific version of Zig, the one downloaded via ./zig/download.sh, you can try using other versions.

  • #2533

    Document how to handle errors during release. TigerBeetle's release process is complicated, as we need to release, in lockstep, both the tigerbeetle binary and all the related client libraries. The release process is intentionally designed to be "highly-available", such that a failure of any aspect of a release can be safely detected, isolated, and repaired. But, so far, this wasn't clearly spelled out in the documentation!

TigerTracks 🎧

23
…
33
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚑️ by Socket Inc