Skip to content
Snippets Groups Projects
  • Linus Heckemann's avatar
    78ac3eb4
    Fix #1762 · 78ac3eb4
    Linus Heckemann authored
    nix-store --export, nix-store --dump, and nix dump-path would previously
    fail silently if writing the data out failed, because
     a) FdSink::write ignored exceptions, and
     b) the commands relied on FdSink's destructor, which ignores
        exceptions, to flush the data out.
    
    This could cause rather opaque issues with installing nixos, because
    nix-store --export would happily proceed even if it couldn't write its
    data out (e.g. if nix-store --import on the other side of the pipe
    failed).
    
    This commit adds tests that expose these issues in the nix-store
    commands, and fixes them for all three.
    78ac3eb4
    History
    Fix #1762
    Linus Heckemann authored
    nix-store --export, nix-store --dump, and nix dump-path would previously
    fail silently if writing the data out failed, because
     a) FdSink::write ignored exceptions, and
     b) the commands relied on FdSink's destructor, which ignores
        exceptions, to flush the data out.
    
    This could cause rather opaque issues with installing nixos, because
    nix-store --export would happily proceed even if it couldn't write its
    data out (e.g. if nix-store --import on the other side of the pipe
    failed).
    
    This commit adds tests that expose these issues in the nix-store
    commands, and fixes them for all three.
export.sh 704 B