@@ -388,8 +388,7 @@ public function getChildren(IShare $parent): array {
388388 ], IQueryBuilder::PARAM_INT_ARRAY )
389389 )
390390 )
391- ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )))
392- ->orderBy ('id ' );
391+ ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )));
393392
394393 $ cursor = $ qb ->executeQuery ();
395394 while ($ data = $ cursor ->fetch ()) {
@@ -673,8 +672,6 @@ private function getSharesInFolderInternal(?string $userId, Folder $node, ?bool
673672 )
674673 );
675674
676- $ qb ->orderBy ('id ' );
677-
678675 $ shares = [];
679676
680677 $ chunks = array_chunk ($ childMountRootIds , 1000 );
@@ -732,7 +729,9 @@ public function getSharesBy($userId, $shareType, $node, $reshares, $limit, $offs
732729 }
733730
734731 $ qb ->setFirstResult ($ offset );
735- $ qb ->orderBy ('id ' );
732+ if ($ offset !== 0 || $ limit !== -1 ) {
733+ $ qb ->orderBy ('id ' );
734+ }
736735
737736 $ cursor = $ qb ->executeQuery ();
738737 $ shares = [];
@@ -801,7 +800,6 @@ public function getSharesByPath(Node $path) {
801800 ->andWhere ($ qb ->expr ()->eq ('file_source ' , $ qb ->createNamedParameter ($ path ->getId ())))
802801 ->andWhere ($ qb ->expr ()->in ('share_type ' , $ qb ->createNamedParameter ([IShare::TYPE_USER , IShare::TYPE_GROUP , IShare::TYPE_LINK ], IQueryBuilder::PARAM_INT_ARRAY )))
803802 ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )))
804- ->orderBy ('id ' , 'ASC ' )
805803 ->executeQuery ();
806804
807805 $ shares = [];
@@ -894,8 +892,10 @@ private function _getSharedWith(
894892 ->leftJoin ('s ' , 'filecache ' , 'f ' , $ qb ->expr ()->eq ('s.file_source ' , 'f.fileid ' ))
895893 ->leftJoin ('f ' , 'storages ' , 'st ' , $ qb ->expr ()->eq ('f.storage ' , 'st.numeric_id ' ));
896894
897- // Order by id
898- $ qb ->orderBy ('s.id ' );
895+ if ($ offset !== 0 || $ limit !== -1 ) {
896+ // Order by id
897+ $ qb ->orderBy ('id ' );
898+ }
899899
900900 // Set limit and offset
901901 if ($ limit !== -1 ) {
@@ -964,9 +964,12 @@ private function _getSharedWith(
964964 ->from ('share ' , 's ' )
965965 ->leftJoin ('s ' , 'filecache ' , 'f ' , $ qb ->expr ()->eq ('s.file_source ' , 'f.fileid ' ))
966966 ->leftJoin ('f ' , 'storages ' , 'st ' , $ qb ->expr ()->eq ('f.storage ' , 'st.numeric_id ' ))
967- ->orderBy ('s.id ' )
968967 ->setFirstResult (0 );
969968
969+ if ($ offset !== 0 || $ limit !== -1 ) {
970+ $ qb ->orderBy ('id ' );
971+ }
972+
970973 if ($ limit !== -1 ) {
971974 $ qb ->setMaxResults ($ limit - count ($ shares ));
972975 }
0 commit comments