From c16d116fa6f27a199a7b483f91047c78dd6eddce Mon Sep 17 00:00:00 2001 From: Roeland Jago Douma Date: Wed, 17 Apr 2019 21:37:16 +0200 Subject: [PATCH] Prefetching blows up if there are a lot of files. I saw instances where people had a lot of files (each with custom properties) and all this prefetching blew up and started to consume an insane amount of RAM resulting in the process getting killed. Signed-off-by: Roeland Jago Douma --- apps/dav/lib/Connector/Sabre/CustomPropertiesBackend.php | 7 ------- .../unit/Connector/Sabre/CustomPropertiesBackendTest.php | 4 ---- 2 files changed, 11 deletions(-) diff --git a/apps/dav/lib/Connector/Sabre/CustomPropertiesBackend.php b/apps/dav/lib/Connector/Sabre/CustomPropertiesBackend.php index c77a4d6be48..f3f685a8b9e 100644 --- a/apps/dav/lib/Connector/Sabre/CustomPropertiesBackend.php +++ b/apps/dav/lib/Connector/Sabre/CustomPropertiesBackend.php @@ -129,13 +129,6 @@ class CustomPropertiesBackend implements BackendInterface { return; } - if ($node instanceof Directory - && $propFind->getDepth() !== 0 - ) { - // note: pre-fetching only supported for depth <= 1 - $this->loadChildrenProperties($node, $requestedProps); - } - $props = $this->getProperties($node, $requestedProps); foreach ($props as $propName => $propValue) { $propFind->set($propName, $propValue); diff --git a/apps/dav/tests/unit/Connector/Sabre/CustomPropertiesBackendTest.php b/apps/dav/tests/unit/Connector/Sabre/CustomPropertiesBackendTest.php index 91973eeff5d..3b7bd859b9f 100644 --- a/apps/dav/tests/unit/Connector/Sabre/CustomPropertiesBackendTest.php +++ b/apps/dav/tests/unit/Connector/Sabre/CustomPropertiesBackendTest.php @@ -226,10 +226,6 @@ class CustomPropertiesBackendTest extends \Test\TestCase { ->method('getPath') ->will($this->returnValue('/dummypath/test.txt')); - $rootNode->expects($this->once()) - ->method('getChildren') - ->will($this->returnValue(array($nodeSub))); - $this->tree->expects($this->at(0)) ->method('getNodeForPath') ->with('/dummypath') -- 2.39.5