aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--weed/storage/needle/volume_ttl.go22
1 files changed, 20 insertions, 2 deletions
diff --git a/weed/storage/needle/volume_ttl.go b/weed/storage/needle/volume_ttl.go
index 26ce3b8fd..5368beaed 100644
--- a/weed/storage/needle/volume_ttl.go
+++ b/weed/storage/needle/volume_ttl.go
@@ -134,7 +134,7 @@ func (t TTL) Minutes() uint32 {
case Week:
return uint32(t.Count) * 60 * 24 * 7
case Month:
- return uint32(t.Count) * 60 * 24 * 31
+ return uint32(t.Count) * 60 * 24 * 30
case Year:
return uint32(t.Count) * 60 * 24 * 365
}
@@ -145,5 +145,23 @@ func SecondsToTTL(seconds int32) string {
if seconds == 0 {
return ""
}
- return fmt.Sprintf("%dm", seconds/60)
+ if seconds/60 < 256 {
+ return fmt.Sprintf("%dm", seconds/60)
+ }
+ if seconds/(3600) < 256 {
+ return fmt.Sprintf("%dh", seconds/(3600))
+ }
+ if seconds/(3600*24) < 256 {
+ return fmt.Sprintf("%dd", seconds/(3600*24))
+ }
+ if seconds/(3600*24*7) < 256 {
+ return fmt.Sprintf("%dw", seconds/(3600*24*7))
+ }
+ if seconds/(3600*24*30) < 256 {
+ return fmt.Sprintf("%dM", seconds/(3600*24*30))
+ }
+ if seconds/(3600*24*365) < 256 {
+ return fmt.Sprintf("%dy", seconds/(3600*24*365))
+ }
+ return ""
}