diff --git a/lib/private/files/config/usermountcache.php b/lib/private/files/config/usermountcache.php index 5fa192d105..e3a494e93a 100644 --- a/lib/private/files/config/usermountcache.php +++ b/lib/private/files/config/usermountcache.php @@ -119,30 +119,12 @@ class UserMountCache implements IUserMountCache { } private function addToCache(ICachedMountInfo $mount) { - $builder = $this->connection->getQueryBuilder(); - - $query = $builder->insert('mounts') - ->values([ - 'storage_id' => ':storage', - 'root_id' => ':root', - 'user_id' => ':user', - 'mount_point' => ':mount' - ]); - $query->setParameters([ - ':storage' => $mount->getStorageId(), - ':root' => $mount->getRootId(), - ':user' => $mount->getUser()->getUID(), - ':mount' => $mount->getMountPoint() + $this->connection->insertIfNotExist('*PREFIX*mounts', [ + 'storage_id' => $mount->getStorageId(), + 'root_id' => $mount->getRootId(), + 'user_id' => $mount->getUser()->getUID(), + 'mount_point' => $mount->getMountPoint() ]); - try { - $query->execute(); - } catch (UniqueConstraintViolationException $e) { - // seems to mainly happen in tests - // can also happen during concurrent access but we can safely ignore it - // since inserting the same data twice will still result in the correct data being inserted - $this->logger->error('Duplicate entry while inserting mount'); - $this->logger->logException($e); - } } private function setMountPoint(ICachedMountInfo $mount) {