From c21b8169ff3846e31d1f2fac389b0ea6880d62aa Mon Sep 17 00:00:00 2001 From: Carl Schwan Date: Tue, 26 Aug 2025 14:24:48 +0200 Subject: [PATCH] refactor(querybuilder): Port away from qb::execute() in lib/ Replace by either executeStatement or executeQuery Signed-off-by: Carl Schwan --- .../Collaboration/Resources/Collection.php | 2 +- .../Collaboration/Resources/Manager.php | 36 ++++----- .../Collaboration/Resources/Resource.php | 2 +- lib/private/Comments/Manager.php | 73 ++++++++----------- .../Sharded/CrossShardMoveHelper.php | 2 +- lib/private/Files/Cache/Cache.php | 4 +- lib/private/Group/Database.php | 4 +- .../Repair/Owncloud/SaveAccountsTableData.php | 4 +- .../Repair/Owncloud/UpdateLanguageCodes.php | 2 +- lib/private/Repair/RepairDavShares.php | 4 +- lib/private/Repair/RepairMimeTypes.php | 8 +- lib/private/Setup/PostgreSQL.php | 10 +-- lib/private/SystemTag/SystemTagManager.php | 18 ++--- .../SystemTag/SystemTagObjectMapper.php | 4 +- lib/private/TagManager.php | 2 +- lib/private/User/Manager.php | 6 +- lib/public/Comments/ICommentsManager.php | 8 +- tests/lib/Repair/RepairDavSharesTest.php | 4 +- 18 files changed, 90 insertions(+), 103 deletions(-) diff --git a/lib/private/Collaboration/Resources/Collection.php b/lib/private/Collaboration/Resources/Collection.php index 2481a3e9a09..a8219bc633b 100644 --- a/lib/private/Collaboration/Resources/Collection.php +++ b/lib/private/Collaboration/Resources/Collection.php @@ -95,7 +95,7 @@ class Collection implements ICollection { ]); try { - $query->execute(); + $query->executeStatement(); } catch (ConstraintViolationException $e) { throw new ResourceException('Already part of the collection'); } diff --git a/lib/private/Collaboration/Resources/Manager.php b/lib/private/Collaboration/Resources/Manager.php index 8d1e4b13287..c5b0d8bd339 100644 --- a/lib/private/Collaboration/Resources/Manager.php +++ b/lib/private/Collaboration/Resources/Manager.php @@ -45,7 +45,7 @@ class Manager implements IManager { $query->select('*') ->from(self::TABLE_COLLECTIONS) ->where($query->expr()->eq('id', $query->createNamedParameter($id, IQueryBuilder::PARAM_INT))); - $result = $query->execute(); + $result = $query->executeQuery(); $row = $result->fetch(); $result->closeCursor(); @@ -74,7 +74,7 @@ class Manager implements IManager { ) ) ->where($query->expr()->eq('c.id', $query->createNamedParameter($id, IQueryBuilder::PARAM_INT))); - $result = $query->execute(); + $result = $query->executeQuery(); $row = $result->fetch(); $result->closeCursor(); @@ -116,7 +116,7 @@ class Manager implements IManager { $query->andWhere($query->expr()->iLike('c.name', $query->createNamedParameter('%' . $this->connection->escapeLikeParameter($filter) . '%'))); } - $result = $query->execute(); + $result = $query->executeQuery(); $collections = []; $foundResults = 0; @@ -146,7 +146,7 @@ class Manager implements IManager { ->values([ 'name' => $query->createNamedParameter($name), ]); - $query->execute(); + $query->executeStatement(); return new Collection($this, $this->connection, $query->getLastInsertId(), $name); } @@ -178,7 +178,7 @@ class Manager implements IManager { ) ->where($query->expr()->eq('r.resource_type', $query->createNamedParameter($type, IQueryBuilder::PARAM_STR))) ->andWhere($query->expr()->eq('r.resource_id', $query->createNamedParameter($id, IQueryBuilder::PARAM_STR))); - $result = $query->execute(); + $result = $query->executeQuery(); $row = $result->fetch(); $result->closeCursor(); @@ -215,7 +215,7 @@ class Manager implements IManager { ->where($query->expr()->eq('r.collection_id', $query->createNamedParameter($collection->getId(), IQueryBuilder::PARAM_INT))); $resources = []; - $result = $query->execute(); + $result = $query->executeQuery(); while ($row = $result->fetch()) { $access = $row['access'] === null ? null : (bool)$row['access']; $resources[] = new Resource($this, $this->connection, $row['resource_type'], $row['resource_id'], $user, $access); @@ -309,7 +309,7 @@ class Manager implements IManager { ->setMaxResults(1); $hasAccess = null; - $result = $query->execute(); + $result = $query->executeQuery(); if ($row = $result->fetch()) { $hasAccess = (bool)$row['access']; } @@ -329,7 +329,7 @@ class Manager implements IManager { ->setMaxResults(1); $hasAccess = null; - $result = $query->execute(); + $result = $query->executeQuery(); if ($row = $result->fetch()) { $hasAccess = (bool)$row['access']; } @@ -350,7 +350,7 @@ class Manager implements IManager { 'access' => $query->createNamedParameter($access, IQueryBuilder::PARAM_BOOL), ]); try { - $query->execute(); + $query->executeStatement(); } catch (UniqueConstraintViolationException $e) { } } @@ -366,7 +366,7 @@ class Manager implements IManager { 'access' => $query->createNamedParameter($access, IQueryBuilder::PARAM_BOOL), ]); try { - $query->execute(); + $query->executeStatement(); } catch (UniqueConstraintViolationException $e) { } } @@ -377,7 +377,7 @@ class Manager implements IManager { $query->delete(self::TABLE_ACCESS_CACHE) ->where($query->expr()->eq('user_id', $query->createNamedParameter($userId))); - $query->execute(); + $query->executeStatement(); } public function invalidateAccessCacheForResource(IResource $resource): void { @@ -386,7 +386,7 @@ class Manager implements IManager { $query->delete(self::TABLE_ACCESS_CACHE) ->where($query->expr()->eq('resource_id', $query->createNamedParameter($resource->getId()))) ->andWhere($query->expr()->eq('resource_type', $query->createNamedParameter($resource->getType(), IQueryBuilder::PARAM_STR))); - $query->execute(); + $query->executeStatement(); foreach ($resource->getCollections() as $collection) { $this->invalidateAccessCacheForCollection($collection); @@ -398,7 +398,7 @@ class Manager implements IManager { $query->delete(self::TABLE_ACCESS_CACHE) ->where($query->expr()->neq('collection_id', $query->createNamedParameter(0))); - $query->execute(); + $query->executeStatement(); } public function invalidateAccessCacheForCollection(ICollection $collection): void { @@ -406,7 +406,7 @@ class Manager implements IManager { $query->delete(self::TABLE_ACCESS_CACHE) ->where($query->expr()->eq('collection_id', $query->createNamedParameter($collection->getId()))); - $query->execute(); + $query->executeStatement(); } public function invalidateAccessCacheForProvider(IProvider $provider): void { @@ -414,7 +414,7 @@ class Manager implements IManager { $query->delete(self::TABLE_ACCESS_CACHE) ->where($query->expr()->eq('resource_type', $query->createNamedParameter($provider->getType(), IQueryBuilder::PARAM_STR))); - $query->execute(); + $query->executeStatement(); } public function invalidateAccessCacheForResourceByUser(IResource $resource, ?IUser $user): void { @@ -424,7 +424,7 @@ class Manager implements IManager { $query->delete(self::TABLE_ACCESS_CACHE) ->where($query->expr()->eq('resource_id', $query->createNamedParameter($resource->getId()))) ->andWhere($query->expr()->eq('user_id', $query->createNamedParameter($userId))); - $query->execute(); + $query->executeStatement(); foreach ($resource->getCollections() as $collection) { $this->invalidateAccessCacheForCollectionByUser($collection, $user); @@ -438,7 +438,7 @@ class Manager implements IManager { $query->delete(self::TABLE_ACCESS_CACHE) ->where($query->expr()->eq('collection_id', $query->createNamedParameter($collection->getId()))) ->andWhere($query->expr()->eq('user_id', $query->createNamedParameter($userId))); - $query->execute(); + $query->executeStatement(); } public function invalidateAccessCacheForProviderByUser(IProvider $provider, ?IUser $user): void { @@ -448,7 +448,7 @@ class Manager implements IManager { $query->delete(self::TABLE_ACCESS_CACHE) ->where($query->expr()->eq('resource_type', $query->createNamedParameter($provider->getType(), IQueryBuilder::PARAM_STR))) ->andWhere($query->expr()->eq('user_id', $query->createNamedParameter($userId))); - $query->execute(); + $query->executeStatement(); } public function registerResourceProvider(string $provider): void { diff --git a/lib/private/Collaboration/Resources/Resource.php b/lib/private/Collaboration/Resources/Resource.php index 19da3da7e7d..05eaeb8f6aa 100644 --- a/lib/private/Collaboration/Resources/Resource.php +++ b/lib/private/Collaboration/Resources/Resource.php @@ -102,7 +102,7 @@ class Resource implements IResource { ->where($query->expr()->eq('resource_type', $query->createNamedParameter($this->getType()))) ->andWhere($query->expr()->eq('resource_id', $query->createNamedParameter($this->getId()))); - $result = $query->execute(); + $result = $query->executeQuery(); while ($row = $result->fetch()) { $collections[] = $this->manager->getCollection((int)$row['collection_id']); } diff --git a/lib/private/Comments/Manager.php b/lib/private/Comments/Manager.php index 8a4fc4183b9..4fea0e8f68d 100644 --- a/lib/private/Comments/Manager.php +++ b/lib/private/Comments/Manager.php @@ -15,6 +15,7 @@ use OCP\Comments\IComment; use OCP\Comments\ICommentsEventHandler; use OCP\Comments\ICommentsManager; use OCP\Comments\NotFoundException; +use OCP\DB\Exception; use OCP\DB\QueryBuilder\IQueryBuilder; use OCP\EventDispatcher\IEventDispatcher; use OCP\Files\FileInfo; @@ -176,7 +177,7 @@ class Manager implements ICommentsManager { ->where($qb->expr()->eq('parent_id', $qb->createParameter('id'))) ->setParameter('id', $id); - $resultStatement = $query->execute(); + $resultStatement = $query->executeQuery(); $data = $resultStatement->fetch(\PDO::FETCH_NUM); $resultStatement->closeCursor(); $children = (int)$data[0]; @@ -250,7 +251,7 @@ class Manager implements ICommentsManager { ->from('comments') ->where($qb->expr()->eq('id', $qb->createParameter('id'))) ->setParameter('id', $id, IQueryBuilder::PARAM_INT) - ->execute(); + ->executeQuery(); $data = $resultStatement->fetch(); $resultStatement->closeCursor(); @@ -286,7 +287,7 @@ class Manager implements ICommentsManager { $query->setFirstResult($offset); } - $resultStatement = $query->execute(); + $resultStatement = $query->executeQuery(); while ($data = $resultStatement->fetch()) { $comment = $this->getCommentFromData($data); $this->cache($comment); @@ -345,7 +346,7 @@ class Manager implements ICommentsManager { ->setParameter('notOlderThan', $notOlderThan, 'datetime'); } - $resultStatement = $query->execute(); + $resultStatement = $query->executeQuery(); while ($data = $resultStatement->fetch()) { $comment = $this->getCommentFromData($data); $this->cache($comment); @@ -507,7 +508,7 @@ class Manager implements ICommentsManager { } } - $resultStatement = $query->execute(); + $resultStatement = $query->executeQuery(); while ($data = $resultStatement->fetch()) { $comment = $this->getCommentFromData($data); $this->cache($comment); @@ -533,7 +534,7 @@ class Manager implements ICommentsManager { ->andWhere($query->expr()->eq('object_id', $query->createNamedParameter($objectId))) ->andWhere($query->expr()->eq('id', $query->createNamedParameter($id, IQueryBuilder::PARAM_INT))); - $result = $query->execute(); + $result = $query->executeQuery(); $row = $result->fetch(); $result->closeCursor(); @@ -605,7 +606,7 @@ class Manager implements ICommentsManager { } $comments = []; - $result = $query->execute(); + $result = $query->executeQuery(); while ($data = $result->fetch()) { $comment = $this->getCommentFromData($data); $this->cache($comment); @@ -649,7 +650,7 @@ class Manager implements ICommentsManager { $query->groupBy('object_id'); $comments = array_fill_keys($objectIds, 0); - $resultStatement = $query->execute(); + $resultStatement = $query->executeQuery(); while ($data = $resultStatement->fetch()) { $comments[$data['object_id']] = (int)$data['num_comments']; } @@ -767,7 +768,7 @@ class Manager implements ICommentsManager { $query->andWhere($query->expr()->eq('verb', $query->createNamedParameter($verb))); } - $result = $query->execute(); + $result = $query->executeQuery(); $data = $result->fetch(); $result->closeCursor(); @@ -804,7 +805,7 @@ class Manager implements ICommentsManager { ->andWhere($query->expr()->in('actor_id', $query->createNamedParameter($actors, IQueryBuilder::PARAM_STR_ARRAY))) ->groupBy('actor_id'); - $result = $query->execute(); + $result = $query->executeQuery(); while ($row = $result->fetch()) { $lastComments[$row['actor_id']] = $this->timeFactory->getDateTime($row['last_comment']); } @@ -886,7 +887,7 @@ class Manager implements ICommentsManager { ->setParameter('id', $id); try { - $affectedRows = $query->execute(); + $affectedRows = $query->executeStatement(); $this->uncache($id); } catch (DriverException $e) { $this->logger->error($e->getMessage(), [ @@ -1138,7 +1139,7 @@ class Manager implements ICommentsManager { $affectedRows = $qb->insert('comments') ->values($values) - ->execute(); + ->executeStatement(); if ($affectedRows > 0) { $comment->setId((string)$qb->getLastInsertId()); @@ -1278,56 +1279,42 @@ class Manager implements ICommentsManager { } /** - * removes references to specific actor (e.g. on user delete) of a comment. - * The comment itself must not get lost/deleted. - * - * @param string $actorType the actor type (e.g. 'users') - * @param string $actorId a user id - * @return boolean - * @since 9.0.0 + * @inheritDoc */ - public function deleteReferencesOfActor($actorType, $actorId) { + public function deleteReferencesOfActor($actorType, $actorId): bool { $this->checkRoleParameters('Actor', $actorType, $actorId); $qb = $this->dbConn->getQueryBuilder(); - $affectedRows = $qb - ->update('comments') + $qb->update('comments') ->set('actor_type', $qb->createNamedParameter(ICommentsManager::DELETED_USER)) ->set('actor_id', $qb->createNamedParameter(ICommentsManager::DELETED_USER)) ->where($qb->expr()->eq('actor_type', $qb->createParameter('type'))) ->andWhere($qb->expr()->eq('actor_id', $qb->createParameter('id'))) ->setParameter('type', $actorType) - ->setParameter('id', $actorId) - ->execute(); + ->setParameter('id', $actorId); + $affectedRows = $qb->executeStatement(); $this->commentsCache = []; - - return is_int($affectedRows); + return true; } /** - * deletes all comments made of a specific object (e.g. on file delete) - * - * @param string $objectType the object type (e.g. 'files') - * @param string $objectId e.g. the file id - * @return boolean - * @since 9.0.0 + * @inheritDoc */ - public function deleteCommentsAtObject($objectType, $objectId) { + public function deleteCommentsAtObject($objectType, $objectId): bool { $this->checkRoleParameters('Object', $objectType, $objectId); $qb = $this->dbConn->getQueryBuilder(); - $affectedRows = $qb + $qb ->delete('comments') ->where($qb->expr()->eq('object_type', $qb->createParameter('type'))) ->andWhere($qb->expr()->eq('object_id', $qb->createParameter('id'))) ->setParameter('type', $objectType) - ->setParameter('id', $objectId) - ->execute(); + ->setParameter('id', $objectId); + $affectedRows = $qb->executeStatement(); $this->commentsCache = []; - - return is_int($affectedRows); + return true; } /** @@ -1344,7 +1331,7 @@ class Manager implements ICommentsManager { ->setParameter('user_id', $user->getUID()); try { - $affectedRows = $query->execute(); + $affectedRows = $query->executeStatement(); } catch (DriverException $e) { $this->logger->error($e->getMessage(), [ 'exception' => $e, @@ -1389,7 +1376,7 @@ class Manager implements ICommentsManager { ->setParameter('user_id', $user->getUID(), IQueryBuilder::PARAM_STR) ->setParameter('object_type', $objectType, IQueryBuilder::PARAM_STR) ->setParameter('object_id', $objectId, IQueryBuilder::PARAM_STR) - ->execute(); + ->executeStatement(); if ($affectedRows > 0) { return; @@ -1397,7 +1384,7 @@ class Manager implements ICommentsManager { $qb->insert('comments_read_markers') ->values($values) - ->execute(); + ->executeStatement(); } /** @@ -1421,7 +1408,7 @@ class Manager implements ICommentsManager { ->setParameter('user_id', $user->getUID(), IQueryBuilder::PARAM_STR) ->setParameter('object_type', $objectType, IQueryBuilder::PARAM_STR) ->setParameter('object_id', $objectId, IQueryBuilder::PARAM_STR) - ->execute(); + ->executeQuery(); $data = $resultStatement->fetch(); $resultStatement->closeCursor(); @@ -1451,7 +1438,7 @@ class Manager implements ICommentsManager { ->setParameter('object_id', $objectId); try { - $affectedRows = $query->execute(); + $affectedRows = $query->executeStatement(); } catch (DriverException $e) { $this->logger->error($e->getMessage(), [ 'exception' => $e, diff --git a/lib/private/DB/QueryBuilder/Sharded/CrossShardMoveHelper.php b/lib/private/DB/QueryBuilder/Sharded/CrossShardMoveHelper.php index 81530b56725..3cd1c90da24 100644 --- a/lib/private/DB/QueryBuilder/Sharded/CrossShardMoveHelper.php +++ b/lib/private/DB/QueryBuilder/Sharded/CrossShardMoveHelper.php @@ -90,7 +90,7 @@ class CrossShardMoveHelper { $results = []; foreach ($chunks as $chunk) { $query->setParameter('keys', $chunk, IQueryBuilder::PARAM_INT_ARRAY); - $results = array_merge($results, $query->execute()->fetchAll()); + $results = array_merge($results, $query->executeQuery()->fetchAll()); } return $results; diff --git a/lib/private/Files/Cache/Cache.php b/lib/private/Files/Cache/Cache.php index 1f7b74a3e22..eec146531e7 100644 --- a/lib/private/Files/Cache/Cache.php +++ b/lib/private/Files/Cache/Cache.php @@ -289,7 +289,7 @@ class Cache implements ICache { $builder->setValue($column, $builder->createNamedParameter($value)); } - if ($builder->execute()) { + if ($builder->executeStatement()) { $fileId = $builder->getLastInsertId(); if (count($extensionValues)) { @@ -376,7 +376,7 @@ class Cache implements ICache { $query->setValue($column, $query->createNamedParameter($value)); } - $query->execute(); + $query->executeStatement(); } catch (UniqueConstraintViolationException $e) { $query = $this->getQueryBuilder(); $query->update('filecache_extended') diff --git a/lib/private/Group/Database.php b/lib/private/Group/Database.php index 0cb571a3935..5744b33d5b2 100644 --- a/lib/private/Group/Database.php +++ b/lib/private/Group/Database.php @@ -71,10 +71,10 @@ class Database extends ABackend implements try { // Add group $builder = $this->dbConn->getQueryBuilder(); - $result = $builder->insert('groups') + $builder->insert('groups') ->setValue('gid', $builder->createNamedParameter($gid)) ->setValue('displayname', $builder->createNamedParameter($name)) - ->execute(); + ->executeStatement(); } catch (UniqueConstraintViolationException $e) { return null; } diff --git a/lib/private/Repair/Owncloud/SaveAccountsTableData.php b/lib/private/Repair/Owncloud/SaveAccountsTableData.php index ab1560ddb8d..db26f3ce2b7 100644 --- a/lib/private/Repair/Owncloud/SaveAccountsTableData.php +++ b/lib/private/Repair/Owncloud/SaveAccountsTableData.php @@ -121,7 +121,7 @@ class SaveAccountsTableData implements IRepairStep { $query->setFirstResult($offset); } - $result = $query->execute(); + $result = $query->executeQuery(); $update = $this->db->getQueryBuilder(); $update->update('users') @@ -175,7 +175,7 @@ class SaveAccountsTableData implements IRepairStep { if ($userdata['display_name'] !== null) { $update->setParameter('displayname', $userdata['display_name']) ->setParameter('userid', $userdata['user_id']); - $update->execute(); + $update->executeStatement(); } } } diff --git a/lib/private/Repair/Owncloud/UpdateLanguageCodes.php b/lib/private/Repair/Owncloud/UpdateLanguageCodes.php index 8d9046ad49f..6bcdd899ec9 100644 --- a/lib/private/Repair/Owncloud/UpdateLanguageCodes.php +++ b/lib/private/Repair/Owncloud/UpdateLanguageCodes.php @@ -64,7 +64,7 @@ class UpdateLanguageCodes implements IRepairStep { ->where($qb->expr()->eq('appid', $qb->createNamedParameter('core'))) ->andWhere($qb->expr()->eq('configkey', $qb->createNamedParameter('lang'))) ->andWhere($qb->expr()->eq('configvalue', $qb->createNamedParameter($oldCode), IQueryBuilder::PARAM_STR)) - ->execute(); + ->executeStatement(); $output->info('Changed ' . $affectedRows . ' setting(s) from "' . $oldCode . '" to "' . $newCode . '" in preferences table.'); } diff --git a/lib/private/Repair/RepairDavShares.php b/lib/private/Repair/RepairDavShares.php index 557e2c080ca..8199d3dff27 100644 --- a/lib/private/Repair/RepairDavShares.php +++ b/lib/private/Repair/RepairDavShares.php @@ -52,7 +52,7 @@ class RepairDavShares implements IRepairStep { ->set('principaluri', $updateQuery->createParameter('updatedPrincipalUri')) ->where($updateQuery->expr()->eq('id', $updateQuery->createParameter('shareId'))); - $statement = $qb->execute(); + $statement = $qb->executeQuery(); while ($share = $statement->fetch()) { $gid = substr($share['principaluri'], strlen(self::GROUP_PRINCIPAL_PREFIX)); $decodedGid = urldecode($gid); @@ -81,7 +81,7 @@ class RepairDavShares implements IRepairStep { $updateQuery ->setParameter('updatedPrincipalUri', $fixedPrincipal) ->setParameter('shareId', $share['id']) - ->execute(); + ->executeStatement(); $this->logger->info('Repaired principal for dav share {id} from {old} to {new}', $logParameters); } catch (Exception $e) { $logParameters['message'] = $e->getMessage(); diff --git a/lib/private/Repair/RepairMimeTypes.php b/lib/private/Repair/RepairMimeTypes.php index 3c9720b9e91..e0a00d339e7 100644 --- a/lib/private/Repair/RepairMimeTypes.php +++ b/lib/private/Repair/RepairMimeTypes.php @@ -53,7 +53,7 @@ class RepairMimeTypes implements IRepairStep { if (empty($this->folderMimeTypeId)) { $query->setParameter('mimetype', 'httpd/unix-directory'); - $result = $query->execute(); + $result = $query->executeQuery(); $this->folderMimeTypeId = (int)$result->fetchOne(); $result->closeCursor(); } @@ -71,21 +71,21 @@ class RepairMimeTypes implements IRepairStep { foreach ($updatedMimetypes as $extension => $mimetype) { // get target mimetype id $query->setParameter('mimetype', $mimetype); - $result = $query->execute(); + $result = $query->executeQuery(); $mimetypeId = (int)$result->fetchOne(); $result->closeCursor(); if (!$mimetypeId) { // insert mimetype $insert->setParameter('mimetype', $mimetype); - $insert->execute(); + $insert->executeStatement(); $mimetypeId = $insert->getLastInsertId(); } // change mimetype for files with x extension $update->setParameter('mimetype', $mimetypeId) ->setParameter('name', '%' . $this->connection->escapeLikeParameter('.' . $extension)); - $count += $update->execute(); + $count += $update->executeStatement(); } return $count; diff --git a/lib/private/Setup/PostgreSQL.php b/lib/private/Setup/PostgreSQL.php index 9a686db2e54..3f8d5e05854 100644 --- a/lib/private/Setup/PostgreSQL.php +++ b/lib/private/Setup/PostgreSQL.php @@ -34,7 +34,7 @@ class PostgreSQL extends AbstractDatabase { ->andWhere($builder->expr()->eq('rolname', $builder->createNamedParameter($this->dbUser))); try { - $result = $query->execute(); + $result = $query->executeQuery(); $canCreateRoles = $result->rowCount() > 0; } catch (DatabaseException $e) { $canCreateRoles = false; @@ -106,7 +106,7 @@ class PostgreSQL extends AbstractDatabase { //The database does not exists... let's create it $query = $connection->prepare('CREATE DATABASE ' . addslashes($this->dbName) . ' OWNER "' . addslashes($this->dbUser) . '"'); try { - $query->execute(); + $query->executeStatement(); } catch (DatabaseException $e) { $this->logger->error('Error while trying to create database', [ 'exception' => $e, @@ -115,7 +115,7 @@ class PostgreSQL extends AbstractDatabase { } else { $query = $connection->prepare('REVOKE ALL PRIVILEGES ON DATABASE ' . addslashes($this->dbName) . ' FROM PUBLIC'); try { - $query->execute(); + $query->executeStatement(); } catch (DatabaseException $e) { $this->logger->error('Error while trying to restrict database permissions', [ 'exception' => $e, @@ -155,10 +155,10 @@ class PostgreSQL extends AbstractDatabase { // create the user $query = $connection->prepare('CREATE USER "' . addslashes($this->dbUser) . "\" CREATEDB PASSWORD '" . addslashes($this->dbPassword) . "'"); - $query->execute(); + $query->executeStatement(); if ($this->databaseExists($connection)) { $query = $connection->prepare('GRANT CONNECT ON DATABASE ' . addslashes($this->dbName) . ' TO "' . addslashes($this->dbUser) . '"'); - $query->execute(); + $query->executeStatement(); } } catch (DatabaseException $e) { $this->logger->error('Error while trying to create database user', [ diff --git a/lib/private/SystemTag/SystemTagManager.php b/lib/private/SystemTag/SystemTagManager.php index 4b421fa033a..9b1e9fb9edd 100644 --- a/lib/private/SystemTag/SystemTagManager.php +++ b/lib/private/SystemTag/SystemTagManager.php @@ -74,7 +74,7 @@ class SystemTagManager implements ISystemTagManager { ->addOrderBy('editable', 'ASC') ->setParameter('tagids', $tagIds, IQueryBuilder::PARAM_INT_ARRAY); - $result = $query->execute(); + $result = $query->executeQuery(); while ($row = $result->fetch()) { $tag = $this->createSystemTagFromRow($row); if ($user && !$this->canUserSeeTag($tag, $user)) { @@ -137,7 +137,7 @@ class SystemTagManager implements ISystemTagManager { ->setParameter('name', $truncatedTagName) ->setParameter('visibility', $userVisible ? 1 : 0) ->setParameter('editable', $userAssignable ? 1 : 0) - ->execute(); + ->executeQuery(); $row = $result->fetch(); $result->closeCursor(); @@ -176,7 +176,7 @@ class SystemTagManager implements ISystemTagManager { ]); try { - $query->execute(); + $query->executeStatement(); } catch (UniqueConstraintViolationException $e) { throw new TagAlreadyExistsException( 'Tag ("' . $truncatedTagName . '", ' . $userVisible . ', ' . $userAssignable . ') already exists', @@ -257,7 +257,7 @@ class SystemTagManager implements ISystemTagManager { ->setParameter('color', $color); try { - if ($query->execute() === 0) { + if ($query->executeStatement() === 0) { throw new TagNotFoundException( 'Tag does not exist', 0, null, [$tagId] ); @@ -303,13 +303,13 @@ class SystemTagManager implements ISystemTagManager { $query->delete(SystemTagObjectMapper::RELATION_TABLE) ->where($query->expr()->in('systemtagid', $query->createParameter('tagids'))) ->setParameter('tagids', $tagIds, IQueryBuilder::PARAM_INT_ARRAY) - ->execute(); + ->executeStatement(); $query = $this->connection->getQueryBuilder(); $query->delete(self::TAG_TABLE) ->where($query->expr()->in('id', $query->createParameter('tagids'))) ->setParameter('tagids', $tagIds, IQueryBuilder::PARAM_INT_ARRAY) - ->execute(); + ->executeStatement(); foreach ($tags as $tag) { $this->dispatcher->dispatch(ManagerEvent::EVENT_DELETE, new ManagerEvent( @@ -404,7 +404,7 @@ class SystemTagManager implements ISystemTagManager { $query = $this->connection->getQueryBuilder(); $query->delete(self::TAG_GROUP_TABLE) ->where($query->expr()->eq('systemtagid', $query->createNamedParameter($tag->getId()))) - ->execute(); + ->executeStatement(); // add each group id $query = $this->connection->getQueryBuilder(); @@ -418,7 +418,7 @@ class SystemTagManager implements ISystemTagManager { continue; } $query->setParameter('gid', $groupId); - $query->execute(); + $query->executeStatement(); } $this->connection->commit(); @@ -436,7 +436,7 @@ class SystemTagManager implements ISystemTagManager { ->where($query->expr()->eq('systemtagid', $query->createNamedParameter($tag->getId()))) ->orderBy('gid'); - $result = $query->execute(); + $result = $query->executeQuery(); while ($row = $result->fetch()) { $groupIds[] = $row['gid']; } diff --git a/lib/private/SystemTag/SystemTagObjectMapper.php b/lib/private/SystemTag/SystemTagObjectMapper.php index 1fa5975dafb..42f57fcca6a 100644 --- a/lib/private/SystemTag/SystemTagObjectMapper.php +++ b/lib/private/SystemTag/SystemTagObjectMapper.php @@ -149,7 +149,7 @@ class SystemTagObjectMapper implements ISystemTagObjectMapper { foreach ($tagIds as $tagId) { try { $query->setParameter('tagid', $tagId); - $query->execute(); + $query->executeStatement(); $tagsAssigned[] = $tagId; } catch (UniqueConstraintViolationException $e) { // ignore existing relations @@ -213,7 +213,7 @@ class SystemTagObjectMapper implements ISystemTagObjectMapper { $query->update('systemtag') ->set('etag', $query->createNamedParameter($md5)) ->where($query->expr()->in('id', $query->createNamedParameter($tagIds, IQueryBuilder::PARAM_INT_ARRAY))); - $query->execute(); + $query->executeStatement(); } /** diff --git a/lib/private/TagManager.php b/lib/private/TagManager.php index 5c346e14430..bfdef55e116 100644 --- a/lib/private/TagManager.php +++ b/lib/private/TagManager.php @@ -75,7 +75,7 @@ class TagManager implements ITagManager, IEventListener { ->andWhere($query->expr()->eq('c.type', $query->createNamedParameter($objectType))) ->andWhere($query->expr()->eq('c.category', $query->createNamedParameter(ITags::TAG_FAVORITE))); - $result = $query->execute(); + $result = $query->executeQuery(); $users = $result->fetchAll(\PDO::FETCH_COLUMN); $result->closeCursor(); diff --git a/lib/private/User/Manager.php b/lib/private/User/Manager.php index 097fd9a0dc8..095c3bbc1ec 100644 --- a/lib/private/User/Manager.php +++ b/lib/private/User/Manager.php @@ -589,7 +589,7 @@ class Manager extends PublicEmitter implements IUserManager { ->andWhere($queryBuilder->expr()->eq('configvalue', $queryBuilder->createNamedParameter('false'), IQueryBuilder::PARAM_STR)); - $result = $queryBuilder->execute(); + $result = $queryBuilder->executeQuery(); $count = $result->fetchOne(); $result->closeCursor(); @@ -615,7 +615,7 @@ class Manager extends PublicEmitter implements IUserManager { ->where($queryBuilder->expr()->eq('appid', $queryBuilder->createNamedParameter('login'))) ->andWhere($queryBuilder->expr()->eq('configkey', $queryBuilder->createNamedParameter('lastLogin'))); - $query = $queryBuilder->execute(); + $query = $queryBuilder->executeQuery(); $result = (int)$query->fetchOne(); $query->closeCursor(); @@ -661,7 +661,7 @@ class Manager extends PublicEmitter implements IUserManager { if ($offset !== null) { $queryBuilder->setFirstResult($offset); } - $query = $queryBuilder->execute(); + $query = $queryBuilder->executeQuery(); $result = []; while ($row = $query->fetch()) { diff --git a/lib/public/Comments/ICommentsManager.php b/lib/public/Comments/ICommentsManager.php index 43402414c57..48524ea832a 100644 --- a/lib/public/Comments/ICommentsManager.php +++ b/lib/public/Comments/ICommentsManager.php @@ -366,7 +366,7 @@ interface ICommentsManager { public function save(IComment $comment); /** - * removes references to specific actor (e.g. on user delete) of a comment. + * Deletes all references to specific actor (e.g. on user delete) of a comment. * The comment itself must not get lost/deleted. * * A 'users' type actor (type and id) should get replaced by the @@ -374,17 +374,17 @@ interface ICommentsManager { * * @param string $actorType the actor type (e.g. 'users') * @param string $actorId a user id - * @return boolean + * @return boolean whether the deletion was successful * @since 9.0.0 */ public function deleteReferencesOfActor($actorType, $actorId); /** - * deletes all comments made of a specific object (e.g. on file delete) + * Deletes all comments made of a specific object (e.g. on file delete). * * @param string $objectType the object type (e.g. 'files') * @param string $objectId e.g. the file id - * @return boolean + * @return boolean whether the deletion was successful * @since 9.0.0 */ public function deleteCommentsAtObject($objectType, $objectId); diff --git a/tests/lib/Repair/RepairDavSharesTest.php b/tests/lib/Repair/RepairDavSharesTest.php index 73e71d75055..d0c1c2abca5 100644 --- a/tests/lib/Repair/RepairDavSharesTest.php +++ b/tests/lib/Repair/RepairDavSharesTest.php @@ -131,7 +131,7 @@ class RepairDavSharesTest extends TestCase { ->method('where') ->willReturnSelf(); $selectMock->expects($this->once()) - ->method('execute') + ->method('executeQuery') ->willReturn($shareResults); $updateCalls = []; @@ -155,7 +155,7 @@ class RepairDavSharesTest extends TestCase { return $updateMock; }); $updateMock->expects($this->exactly(2)) - ->method('execute'); + ->method('executeStatement'); $this->dbc->expects($this->atLeast(2)) ->method('getQueryBuilder')