perf: use lazy user in UserMountCache for getting user for cached mount

Signed-off-by: Robin Appelman <robin@icewind.nl>
pull/43437/head
Robin Appelman 2024-02-07 14:44:24 +07:00
parent 945d97ded1
commit 9ea3f4ab8f
1 changed files with 4 additions and 6 deletions

@ -28,6 +28,7 @@
*/ */
namespace OC\Files\Config; namespace OC\Files\Config;
use OC\User\LazyUser;
use OCP\Cache\CappedMemoryCache; use OCP\Cache\CappedMemoryCache;
use OCP\DB\QueryBuilder\IQueryBuilder; use OCP\DB\QueryBuilder\IQueryBuilder;
use OCP\Diagnostics\IEventLogger; use OCP\Diagnostics\IEventLogger;
@ -213,13 +214,10 @@ class UserMountCache implements IUserMountCache {
/** /**
* @param array $row * @param array $row
* @param (callable(CachedMountInfo): string)|null $pathCallback * @param (callable(CachedMountInfo): string)|null $pathCallback
* @return CachedMountInfo|null * @return CachedMountInfo
*/ */
private function dbRowToMountInfo(array $row, ?callable $pathCallback = null): ?ICachedMountInfo { private function dbRowToMountInfo(array $row, ?callable $pathCallback = null): ICachedMountInfo {
$user = $this->userManager->get($row['user_id']); $user = new LazyUser($row['user_id'], $this->userManager);
if (is_null($user)) {
return null;
}
$mount_id = $row['mount_id']; $mount_id = $row['mount_id'];
if (!is_null($mount_id)) { if (!is_null($mount_id)) {
$mount_id = (int)$mount_id; $mount_id = (int)$mount_id;