8000 bug #32836 [Messenger] Removed named parameters and replaced with `?`… · symfony/symfony@c674042 · GitHub
[go: up one dir, main page]

Skip to content

Commit c674042

Browse files
committed
bug #32836 [Messenger] Removed named parameters and replaced with ? placeholders for sqlsrv compatibility (David Legatt)
This PR was squashed before being merged into the 4.3 branch (closes #32836). Discussion ---------- [Messenger] Removed named parameters and replaced with `?` placeholders for sqlsrv compatibility | Q | A | ------------- | --- | Branch? | 4.3 | Bug fix? | yes | New feature? | no | BC breaks? | no | Deprecations? | no | Tests pass? | yes | Fixed tickets | #32585 | License | MIT | Doc PR | I edited the Doctrine Transport Connection class to use `?` placeholders in the query builder instead of named repositories as this resulted in a compatibility issue with SQL Server. Commits ------- fc0e4ba [Messenger] Removed named parameters and replaced with `?` placeholders for sqlsrv compatibility
2 parents 8b699ae + fc0e4ba commit c674042

File tree

1 file changed

+22
-22
lines changed

1 file changed

+22
-22
lines changed

src/Symfony/Component/Messenger/Transport/Doctrine/Connection.php

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -111,19 +111,19 @@ public function send(string $body, array $headers, int $delay = 0): string
111111
$queryBuilder = $this->driverConnection->createQueryBuilder()
112112
->insert($this->configuration['table_name'])
113113
->values([
114-
'body' => ':body',
115-
'headers' => ':headers',
116-
'queue_name' => ':queue_name',
117-
'created_at' => ':created_at',
118-
'available_at' => ':available_at',
114+
'body' => '?',
115+
'headers' => '?',
116+
'queue_name' => '?',
117+
'created_at' => '?',
118+
'available_at' => '?',
119119
]);
120120

121121
$this->executeQuery($queryBuilder->getSQL(), [
122-
':body' => $body,
123-
':headers' => json_encode($headers),
124-
':queue_name' => $this->configuration['queue_name'],
125-
':created_at' => self::formatDateTime($now),
126-
':available_at' => self::formatDateTime($availableAt),
122+
$body,
123+
json_encode($headers),
124+
$this->configuration['queue_name'],
125+
self::formatDateTime($now),
126+
self::formatDateTime($availableAt),
127127
]);
128128

129129
return $this->driverConnection->lastInsertId();
@@ -156,12 +156,12 @@ public function get(): ?array
156156

157157
$queryBuilder = $this->driverConnection->createQueryBuilder()
158158
->update($this->configuration['table_name'])
159-
->set('delivered_at', ':delivered_at')
160-
->where('id = :id');
159+
->set('delivered_at', '?')
160+
->where('id = ?');
161161
$now = new \DateTime();
162162
$this->executeQuery($queryBuilder->getSQL(), [
163-
':id' => $doctrineEnvelope['id'],
164-
':delivered_at' => self::formatDateTime($now),
163+
self::formatDateTime($now),
164+
$doctrineEnvelope['id'],
165165
]);
166166

167167
$this->driverConnection->commit();
@@ -249,10 +249,10 @@ public function find($id): ?array
249249
}
250250

251251
$queryBuilder = $this->createQueryBuilder()
252-
->where('m.id = :id');
252+
->where('m.id = ?');
253253

254254
$data = $this->executeQuery($queryBuilder->getSQL(), [
255-
'id' => $id,
255+
$id,
256256
])->fetch();
257257

258258
return false === $data ? null : $this->decodeEnvelopeHeaders($data);
@@ -264,13 +264,13 @@ private function createAvailableMessagesQueryBuilder(): QueryBuilder
264264
$redeliverLimit = (clone $now)->modify(sprintf('-%d seconds', $this->configuration['redeliver_timeout']));
265265

266266
return $this->createQueryBuilder()
267-
->where('m.delivered_at is null OR m.delivered_at < :redeliver_limit')
268-
->andWhere('m.available_at <= :now')
269-
->andWhere('m.queue_name = :queue_name')
267+
->where('m.delivered_at is null OR m.delivered_at < ?')
268+
->andWhere('m.available_at <= ?')
269+
->andWhere('m.queue_name = ?')
270270
->setParameters([
271-
':now' => self::formatDateTime($now),
272-
':queue_name' => $this->configuration['queue_name'],
273-
':redeliver_limit' => self::formatDateTime($redeliverLimit),
271+
self::formatDateTime($redeliverLimit),
272+
self::formatDateTime($now),
273+
$this->configuration['queue_name'],
274274
]);
275275
}
276276

0 commit comments

Comments
 (0)
0