@@ -381,8 +381,7 @@ public function getChildren(IShare $parent): array {
381381 ], IQueryBuilder::PARAM_INT_ARRAY )
382382 )
383383 )
384- ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )))
385- ->orderBy ('id ' );
384+ ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )));
386385
387386 $ cursor = $ qb ->executeQuery ();
388387 while ($ data = $ cursor ->fetch ()) {
@@ -666,8 +665,6 @@ private function getSharesInFolderInternal(?string $userId, Folder $node, ?bool
666665 )
667666 );
668667
669- $ qb ->orderBy ('id ' );
670-
671668 $ shares = [];
672669
673670 $ chunks = array_chunk ($ childMountRootIds , 1000 );
@@ -725,7 +722,9 @@ public function getSharesBy($userId, $shareType, $node, $reshares, $limit, $offs
725722 }
726723
727724 $ qb ->setFirstResult ($ offset );
728- $ qb ->orderBy ('id ' );
725+ if ($ offset !== 0 || $ limit !== -1 ) {
726+ $ qb ->orderBy ('id ' );
727+ }
729728
730729 $ cursor = $ qb ->executeQuery ();
731730 $ shares = [];
@@ -794,7 +793,6 @@ public function getSharesByPath(Node $path) {
794793 ->andWhere ($ qb ->expr ()->eq ('file_source ' , $ qb ->createNamedParameter ($ path ->getId ())))
795794 ->andWhere ($ qb ->expr ()->in ('share_type ' , $ qb ->createNamedParameter ([IShare::TYPE_USER , IShare::TYPE_GROUP , IShare::TYPE_LINK ], IQueryBuilder::PARAM_INT_ARRAY )))
796795 ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )))
797- ->orderBy ('id ' , 'ASC ' )
798796 ->executeQuery ();
799797
800798 $ shares = [];
@@ -887,8 +885,10 @@ private function _getSharedWith(
887885 ->leftJoin ('s ' , 'filecache ' , 'f ' , $ qb ->expr ()->eq ('s.file_source ' , 'f.fileid ' ))
888886 ->leftJoin ('f ' , 'storages ' , 'st ' , $ qb ->expr ()->eq ('f.storage ' , 'st.numeric_id ' ));
889887
890- // Order by id
891- $ qb ->orderBy ('s.id ' );
888+ if ($ offset !== 0 || $ limit !== -1 ) {
889+ // Order by id
890+ $ qb ->orderBy ('s.id ' );
891+ }
892892
893893 // Set limit and offset
894894 if ($ limit !== -1 ) {
@@ -957,9 +957,12 @@ private function _getSharedWith(
957957 ->from ('share ' , 's ' )
958958 ->leftJoin ('s ' , 'filecache ' , 'f ' , $ qb ->expr ()->eq ('s.file_source ' , 'f.fileid ' ))
959959 ->leftJoin ('f ' , 'storages ' , 'st ' , $ qb ->expr ()->eq ('f.storage ' , 'st.numeric_id ' ))
960- ->orderBy ('s.id ' )
961960 ->setFirstResult (0 );
962961
962+ if ($ offset !== 0 || $ limit !== -1 ) {
963+ $ qb ->orderBy ('s.id ' );
964+ }
965+
963966 if ($ limit !== -1 ) {
964967 $ qb ->setMaxResults ($ limit - count ($ shares ));
965968 }
0 commit comments