diff options
author | Louis Chemineau <louis@chmn.me> | 2023-12-13 10:40:20 +0100 |
---|---|---|
committer | Louis Chemineau <louis@chmn.me> | 2023-12-13 10:51:15 +0100 |
commit | 8eb58d03a970c687e62daaa71b4822a45d4aad2b (patch) | |
tree | 0063a58130b29c900e76befa92126365bed9bdc5 /core | |
parent | 6077f26d9c4eca4812983fd94b061dd6ae6c9f7e (diff) | |
download | nextcloud-server-8eb58d03a970c687e62daaa71b4822a45d4aad2b.tar.gz nextcloud-server-8eb58d03a970c687e62daaa71b4822a45d4aad2b.zip |
Wrap metadata generation in try/catch
Signed-off-by: Louis Chemineau <louis@chmn.me>
Diffstat (limited to 'core')
-rw-r--r-- | core/BackgroundJobs/GenerateMetadataJob.php | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/core/BackgroundJobs/GenerateMetadataJob.php b/core/BackgroundJobs/GenerateMetadataJob.php index f0dfdb8de22..393545b097d 100644 --- a/core/BackgroundJobs/GenerateMetadataJob.php +++ b/core/BackgroundJobs/GenerateMetadataJob.php @@ -33,6 +33,7 @@ use OCP\Files\IRootFolder; use OCP\FilesMetadata\IFilesMetadataManager; use OCP\IConfig; use OCP\IUserManager; +use Psr\Log\LoggerInterface; class GenerateMetadataJob extends TimedJob { public function __construct( @@ -42,6 +43,7 @@ class GenerateMetadataJob extends TimedJob { private IUserManager $userManager, private IFilesMetadataManager $filesMetadataManager, private IJobList $jobList, + private LoggerInterface $logger, ) { parent::__construct($time); @@ -102,10 +104,14 @@ class GenerateMetadataJob extends TimedJob { continue; } - $this->filesMetadataManager->refreshMetadata( - $node, - IFilesMetadataManager::PROCESS_LIVE | IFilesMetadataManager::PROCESS_BACKGROUND - ); + try { + $this->filesMetadataManager->refreshMetadata( + $node, + IFilesMetadataManager::PROCESS_LIVE | IFilesMetadataManager::PROCESS_BACKGROUND + ); + } catch (\Throwable $ex) { + $this->logger->warning("Error while generating metadata for fileid ".$node->getId(), ['exception' => $ex]); + } } } } |