Activity log for bug #309091

Date Who What changed Old value New value Message
2008-12-17 19:44:52 Nikodemus Siivola bug added bug
2008-12-21 00:34:38 Nikodemus Siivola description Closing a stream opened with :IF-EXISTS :SUPERSEDE with :ABORT T leaves no file on disk, even if one existed before opening. The illegality of this is not crystal clear, as the ANSI dictionary entry for CLOSE says that when :ABORT is T superseded files are not superseded (ie. the original should be restored), whereas the OPEN entry says about :IF-EXISTS :SUPERSEDE "If possible, the implementation should not destroy the old file until the new stream is closed." -- implying that even though undesirable, early deletion is legal. Restoring the original would none the less be the polite thing to do. Closing a stream opened with :IF-EXISTS :SUPERSEDE with :ABORT T leaves no file on disk, even if one existed before opening. The illegality of this is not crystal clear, as the ANSI dictionary entry for CLOSE says that when :ABORT is T superseded files are not superseded (ie. the original should be restored), whereas the OPEN entry says about :IF-EXISTS :SUPERSEDE "If possible, the implementation should not destroy the old file until the new stream is closed." -- implying that even though undesirable, early deletion is legal. Restoring the original would none the less be the polite thing to do. Note: Richard Kreuter's "transaction stream" proposal (sbcl-devel link goes here) would be one way to address this, and other related issues.
2008-12-21 00:35:08 Nikodemus Siivola sbcl: status New Confirmed
2008-12-21 00:35:08 Nikodemus Siivola sbcl: importance Undecided Wishlist
2008-12-21 00:35:08 Nikodemus Siivola sbcl: statusexplanation