Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: rabbitmq/ra
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v3.0.1
Choose a base ref
...
head repository: rabbitmq/ra
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v3.0.2
Choose a head ref
  • 9 commits
  • 5 files changed
  • 3 contributors

Commits on Mar 12, 2026

  1. compaction: fix infinite loop

    When a segment qualified for compaction (had < 50% live entries or data)
    but its live_size exceeded max_size (or NumLive exceeded max_count), and
    no segments have been accumulated yet, the function returned
    {[], All} where All still contains the problematic segment.
    mkuratczyk committed Mar 12, 2026
    Configuration menu
    Copy the full SHA
    188ecb9 View commit details
    Browse the repository at this point in the history

Commits on Mar 13, 2026

  1. Merge pull request #590 from rabbitmq/fix-infinte-loop

    compaction: fix infinite loop
    kjnilsson authored Mar 13, 2026
    Configuration menu
    Copy the full SHA
    7d933d6 View commit details
    Browse the repository at this point in the history
  2. Segment writer: read the full snapshot state ETS record atomically.

    The current approoch of reading the snapshot index then the live
    indexes is prone to a race condition where the snapshot state
    is updated in betweeen reading the snapshot index and the live indexes.
    
    E.g.
    
    Snapshot is taken at index 10 with [7, 5, 3, 1]
    Snapshot is taken at index 15 with [13, 11, 5, 3, 1]
    
    Segment writer reads live indexes [7, 5, 3, 1] but snapshot index 15.
    
    13 and 11 will not be written but 7 will be unnecesarily.
    kjnilsson committed Mar 13, 2026
    Configuration menu
    Copy the full SHA
    d59d6a3 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #591 from rabbitmq/snapshot-write-snapshot-state-fix

    Segment writer: read the full snapshot state ETS record atomically.
    kjnilsson authored Mar 13, 2026
    Configuration menu
    Copy the full SHA
    7fd1e17 View commit details
    Browse the repository at this point in the history

Commits on Mar 17, 2026

  1. Report errors on segment close instead of silently discarding them

    ra_log_segment:close/1 in append mode now propagates errors from
    sync and file:close instead of ignoring them. The segment writer
    asserts close succeeds when flushing mem tables and defers pivot
    file deletion until after the successor segment is opened.
    kjnilsson committed Mar 17, 2026
    Configuration menu
    Copy the full SHA
    f035238 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    add7965 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    0204366 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #592 from rabbitmq/report-errors-on-segment-close

    Report errors on segment close instead of silently discarding them
    kjnilsson authored Mar 17, 2026
    Configuration menu
    Copy the full SHA
    1a2e9b5 View commit details
    Browse the repository at this point in the history

Commits on Mar 18, 2026

  1. v3.0.2

    kjnilsson committed Mar 18, 2026
    Configuration menu
    Copy the full SHA
    13a01fc View commit details
    Browse the repository at this point in the history
Loading