1. 28 Nov, 2023 13 commits
  2. 26 Nov, 2023 7 commits
  3. 13 Nov, 2023 15 commits
  4. 12 Nov, 2023 2 commits
  5. 10 Nov, 2023 3 commits
    • Nils Goroll's avatar
      Rework the disk LRU · 268e51e9
      Nils Goroll authored
      It was too complicated and limited by waiting for flushes to finish.
      
      Now that we can issue multiple flushes, we can simplify it
      substantially.
      
      As a result from intermediate efforts, there is now also a facility to
      base nuking on the amount of data currently in the process of freeing.
      Leaving it in #ifdef'ed out in case we'll need it again.
      268e51e9
    • Nils Goroll's avatar
      Store new active block offsets to be updated at just the right time · 9e7fc536
      Nils Goroll authored
      with more than once flush finish, writing a header from an
      old flush could race the logbuffer_ref() from a more recent one,
      leading to an inconsistent log where a logblock with next_off == 0
      became reachable.
      9e7fc536
    • Nils Goroll's avatar
      Rework logbuffer flushing · e23a2bc2
      Nils Goroll authored
      To avoid having to wait for a previous flush to finish (in most cases),
      we now allocate the flush finish state dynamically (and asynchronously).
      
      For ordinary flushes, we can now start the next flush while a previous
      one is still in flight, ordering the flush finish in a list to preserve
      log consistency.
      e23a2bc2