From 0d6910ac13a52f8bfff51056633ea91848f46752 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Tue, 7 Jul 2020 15:55:38 +0200 Subject: [PATCH] disable touch to update mtime for external s3 storage since updating the mtime requires doing a copy this can have a significant overhead and it messes with versioning Signed-off-by: Robin Appelman --- .../lib/Lib/Storage/AmazonS3.php | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/apps/files_external/lib/Lib/Storage/AmazonS3.php b/apps/files_external/lib/Lib/Storage/AmazonS3.php index 641a26b20ee..79b48ef453b 100644 --- a/apps/files_external/lib/Lib/Storage/AmazonS3.php +++ b/apps/files_external/lib/Lib/Storage/AmazonS3.php @@ -544,9 +544,6 @@ class AmazonS3 extends \OC\Files\Storage\Common { } public function touch($path, $mtime = null) { - $path = $this->normalizePath($path); - - $metadata = []; if (is_null($mtime)) { $mtime = time(); } @@ -554,21 +551,8 @@ class AmazonS3 extends \OC\Files\Storage\Common { 'lastmodified' => gmdate(\DateTime::RFC1123, $mtime) ]; - $fileType = $this->filetype($path); try { - if ($fileType !== false) { - if ($fileType === 'dir' && !$this->isRoot($path)) { - $path .= '/'; - } - $this->getConnection()->copyObject([ - 'Bucket' => $this->bucket, - 'Key' => $this->cleanKey($path), - 'Metadata' => $metadata, - 'CopySource' => $this->bucket . '/' . $path, - 'MetadataDirective' => 'REPLACE', - ]); - $this->testTimeout(); - } else { + if (!$this->file_exists($path)) { $mimeType = \OC::$server->getMimeTypeDetector()->detectPath($path); $this->getConnection()->putObject([ 'Bucket' => $this->bucket, -- 2.39.5