From 300935948503d671ad91b943787d71dc1f6e421e Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sun, 27 Jul 2014 12:33:46 -0400 Subject: add key stability checking interface Needed for resuming from chunks. Url keys are considered not stable. I considered treating url keys with a known size as stable, but just don't feel that is enough information. --- Backend/Hash.hs | 1 + Backend/URL.hs | 3 +++ Backend/WORM.hs | 1 + 3 files changed, 5 insertions(+) (limited to 'Backend') diff --git a/Backend/Hash.hs b/Backend/Hash.hs index 3ff496271..91267ed67 100644 --- a/Backend/Hash.hs +++ b/Backend/Hash.hs @@ -45,6 +45,7 @@ genBackend hash = Just Backend , fsckKey = Just $ checkKeyChecksum hash , canUpgradeKey = Just needsUpgrade , fastMigrate = Just trivialMigrate + , isStableKey = const True } genBackendE :: Hash -> Maybe Backend diff --git a/Backend/URL.hs b/Backend/URL.hs index 4233c56bc..2c2988ac0 100644 --- a/Backend/URL.hs +++ b/Backend/URL.hs @@ -25,6 +25,9 @@ backend = Backend , fsckKey = Nothing , canUpgradeKey = Nothing , fastMigrate = Nothing + -- The content of an url can change at any time, so URL keys are + -- not stable. + , isStableKey = const False } {- Every unique url has a corresponding key. -} diff --git a/Backend/WORM.hs b/Backend/WORM.hs index fdeea6f89..c972602ad 100644 --- a/Backend/WORM.hs +++ b/Backend/WORM.hs @@ -23,6 +23,7 @@ backend = Backend , fsckKey = Nothing , canUpgradeKey = Nothing , fastMigrate = Nothing + , isStableKey = const True } {- The key includes the file size, modification time, and the -- cgit v1.2.3