def publish.rename.failed
mylsm-lsm-store@0.6.0.1 · src/transfer/RestoreIo.bend:273
import mylsm-lsm-store@0.6.0.1/src/transfer/RestoreIo.bend as RestoreIo
import Base
import mylsm-lsm-store@0.6.0.1/src/transfer/PublicationPolicy.bend as PublicationPolicy
273def publish.rename.failed(
274 +temporary: String,
275 disposition: PublicationPolicy.Failure,
276 error: U32 & String
277) -> IO(Result<&1, &1, Error, Unit>):
278 match disposition:
279 case PublicationPolicy.KnownFailure{}:
280 match error:
281 case (code, message):
282 do IO<Result<&1, &1, Error, Unit>>:
283 cleanup.directory(temporary)
284 return Fail{Io{code, "exclusive rename failed: " ++ message}}
285 case PublicationPolicy.CommitUnknown{}:
286 match error:
287 case (code, message):
288 IO.pure(Result<&1, &1, Error, Unit>, Fail{CommitUnknown{code, message}})