diff options
author | Harald Musum <musum@verizonmedia.com> | 2022-02-21 21:46:17 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-02-21 21:46:17 +0100 |
commit | 7a3ad31e30da313e7206aa66e6f99af758ffc769 (patch) | |
tree | cc28bdc96e4267fa070dad19582d4d9775ee04d5 | |
parent | 53a92d38bf515c8249145e196df9694f30bd4629 (diff) | |
parent | 034323771c670a51b17c3f9cc4de0652339a193f (diff) |
Merge pull request #21288 from vespa-engine/hmusum/set-last-acess-time-for-file-references
Update last access time of file reference when it already exists [run-systemtest]
-rw-r--r-- | configserver/src/main/java/com/yahoo/vespa/config/server/filedistribution/FileDirectory.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/filedistribution/FileDirectory.java b/configserver/src/main/java/com/yahoo/vespa/config/server/filedistribution/FileDirectory.java index d836eb8111f..f4cb7bc1fba 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/filedistribution/FileDirectory.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/filedistribution/FileDirectory.java @@ -3,8 +3,6 @@ package com.yahoo.vespa.config.server.filedistribution; import com.yahoo.config.FileReference; import com.yahoo.io.IOUtils; -import java.util.logging.Level; - import com.yahoo.text.Utf8; import net.jpountz.xxhash.XXHash64; import net.jpountz.xxhash.XXHashFactory; @@ -19,6 +17,9 @@ import java.nio.channels.FileChannel; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.attribute.BasicFileAttributes; +import java.nio.file.attribute.FileTime; +import java.time.Instant; +import java.util.logging.Level; import java.util.logging.Logger; public class FileDirectory { @@ -118,6 +119,11 @@ public class FileDirectory { "' has content that does not match its hash, deleting everything in " + destinationDir.getAbsolutePath()); IOUtils.recursiveDeleteDir(destinationDir); + } else { + // Update last access time (used to keep track of when we can delete unused file references + // so update when adding and it already exists) + FileTime fileTime = FileTime.from(Instant.now()); + Files.setAttribute(destinationDir.toPath(), "basic:lastAccessTime", fileTime); } } |