From 87fd9434ee95e7b9618e2e0b8779c8b7caf6bcf5 Mon Sep 17 00:00:00 2001 From: Richard Steinmetz Date: Sat, 23 Nov 2024 16:41:59 +0100 Subject: [PATCH 1/2] fix: invalid usage of IQueryBuilder::createNamedParameter() And fix a typo: chunck -> chunk Signed-off-by: Richard Steinmetz --- apps/dav/lib/CalDAV/CalDavBackend.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/dav/lib/CalDAV/CalDavBackend.php b/apps/dav/lib/CalDAV/CalDavBackend.php index 165c62b503596..01ea38ae47465 100644 --- a/apps/dav/lib/CalDAV/CalDavBackend.php +++ b/apps/dav/lib/CalDAV/CalDavBackend.php @@ -3569,9 +3569,9 @@ protected function purgeCalendarInvitations(int $calendarId): void { // delete all links that match object uid's $cmd = $this->db->getQueryBuilder(); $cmd->delete($this->dbObjectInvitationsTable) - ->where($cmd->expr()->in('uid', $cmd->createNamedParameter('uids'), IQueryBuilder::PARAM_STR_ARRAY)); - foreach (array_chunk($allIds, 1000) as $chunckIds) { - $cmd->setParameter('uids', $chunckIds, IQueryBuilder::PARAM_INT_ARRAY); + ->where($cmd->expr()->in('uid', $cmd->createParameter('uids'), IQueryBuilder::PARAM_STR_ARRAY)); + foreach (array_chunk($allIds, 1000) as $chunkIds) { + $cmd->setParameter('uids', $chunkIds, IQueryBuilder::PARAM_INT_ARRAY); $cmd->executeStatement(); } } From 11f444e34f6da1de156782f50bcd9fa1f8a1962b Mon Sep 17 00:00:00 2001 From: Richard Steinmetz Date: Sat, 23 Nov 2024 16:52:46 +0100 Subject: [PATCH 2/2] fix: improve oci compatibility when purging calendar invitations Signed-off-by: Richard Steinmetz --- apps/dav/lib/CalDAV/CalDavBackend.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/dav/lib/CalDAV/CalDavBackend.php b/apps/dav/lib/CalDAV/CalDavBackend.php index 01ea38ae47465..2342d1e94310c 100644 --- a/apps/dav/lib/CalDAV/CalDavBackend.php +++ b/apps/dav/lib/CalDAV/CalDavBackend.php @@ -3571,7 +3571,7 @@ protected function purgeCalendarInvitations(int $calendarId): void { $cmd->delete($this->dbObjectInvitationsTable) ->where($cmd->expr()->in('uid', $cmd->createParameter('uids'), IQueryBuilder::PARAM_STR_ARRAY)); foreach (array_chunk($allIds, 1000) as $chunkIds) { - $cmd->setParameter('uids', $chunkIds, IQueryBuilder::PARAM_INT_ARRAY); + $cmd->setParameter('uids', $chunkIds, IQueryBuilder::PARAM_STR_ARRAY); $cmd->executeStatement(); } } @@ -3588,7 +3588,7 @@ protected function purgeCalendarInvitations(int $calendarId): void { protected function purgeObjectInvitations(string $eventId): void { $cmd = $this->db->getQueryBuilder(); $cmd->delete($this->dbObjectInvitationsTable) - ->where($cmd->expr()->eq('uid', $cmd->createNamedParameter($eventId))); + ->where($cmd->expr()->eq('uid', $cmd->createNamedParameter($eventId, IQueryBuilder::PARAM_STR), IQueryBuilder::PARAM_STR)); $cmd->executeStatement(); } }