ExportXMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Major - P3
    • WT12.0.0, 9.1.0-rc0
    • Affects Version/s: None
    • Component/s: DHandles
    • None
    • Storage Engines - Foundations
    • 316.905
    • None
    • None

      BF-46272 reports an LSAN leak (729 bytes, 5 allocations, all indirect) on disaggregated storage AUBSAN tasks.

      On a disaggregated leader, _wt_evict_file(WT_SYNC_DISCARD) returns EBUSY when the btree's rec_lsn_max is ahead of last_materialized_lsn: those pages exist only in the cache, so discarding them would lose data. _wt_conn_dhandle_close invoked it with WT_TRET, which records the error but does not branch, so execution fell through and cleared WT_DHANDLE_OPEN on a handle whose pages were still in the cache.

      So on a sweep pass _wt_conn_dhandle_close calls _wt_evict_file which returns EBUSY because of the materialisation frontier not being advanced yet, but the dhandle close logic proceeds and clears WT_DHANDLE_OPEN, hiding the btree from further sweeps and leaking the memory.

            Assignee:
            [DO NOT USE] Backlog - Storage Engines Team
            Reporter:
            Ivan Kochin
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: