[Messenger] Removed named parameters and replaced with ? placeholders for sqlsrv compatibility

This commit is contained in:
David Legatt 2019-07-31 11:11:19 -05:00 committed by Fabien Potencier
parent 9ac35529b6
commit fc0e4baf2f

View File

@ -111,19 +111,19 @@ class Connection
$queryBuilder = $this->driverConnection->createQueryBuilder() $queryBuilder = $this->driverConnection->createQueryBuilder()
->insert($this->configuration['table_name']) ->insert($this->configuration['table_name'])
->values([ ->values([
'body' => ':body', 'body' => '?',
'headers' => ':headers', 'headers' => '?',
'queue_name' => ':queue_name', 'queue_name' => '?',
'created_at' => ':created_at', 'created_at' => '?',
'available_at' => ':available_at', 'available_at' => '?',
]); ]);
$this->executeQuery($queryBuilder->getSQL(), [ $this->executeQuery($queryBuilder->getSQL(), [
':body' => $body, $body,
':headers' => json_encode($headers), json_encode($headers),
':queue_name' => $this->configuration['queue_name'], $this->configuration['queue_name'],
':created_at' => self::formatDateTime($now), self::formatDateTime($now),
':available_at' => self::formatDateTime($availableAt), self::formatDateTime($availableAt),
]); ]);
return $this->driverConnection->lastInsertId(); return $this->driverConnection->lastInsertId();
@ -156,12 +156,12 @@ class Connection
$queryBuilder = $this->driverConnection->createQueryBuilder() $queryBuilder = $this->driverConnection->createQueryBuilder()
->update($this->configuration['table_name']) ->update($this->configuration['table_name'])
->set('delivered_at', ':delivered_at') ->set('delivered_at', '?')
->where('id = :id'); ->where('id = ?');
$now = new \DateTime(); $now = new \DateTime();
$this->executeQuery($queryBuilder->getSQL(), [ $this->executeQuery($queryBuilder->getSQL(), [
':id' => $doctrineEnvelope['id'], self::formatDateTime($now),
':delivered_at' => self::formatDateTime($now), $doctrineEnvelope['id'],
]); ]);
$this->driverConnection->commit(); $this->driverConnection->commit();
@ -249,10 +249,10 @@ class Connection
} }
$queryBuilder = $this->createQueryBuilder() $queryBuilder = $this->createQueryBuilder()
->where('m.id = :id'); ->where('m.id = ?');
$data = $this->executeQuery($queryBuilder->getSQL(), [ $data = $this->executeQuery($queryBuilder->getSQL(), [
'id' => $id, $id,
])->fetch(); ])->fetch();
return false === $data ? null : $this->decodeEnvelopeHeaders($data); return false === $data ? null : $this->decodeEnvelopeHeaders($data);
@ -264,13 +264,13 @@ class Connection
$redeliverLimit = (clone $now)->modify(sprintf('-%d seconds', $this->configuration['redeliver_timeout'])); $redeliverLimit = (clone $now)->modify(sprintf('-%d seconds', $this->configuration['redeliver_timeout']));
return $this->createQueryBuilder() return $this->createQueryBuilder()
->where('m.delivered_at is null OR m.delivered_at < :redeliver_limit') ->where('m.delivered_at is null OR m.delivered_at < ?')
->andWhere('m.available_at <= :now') ->andWhere('m.available_at <= ?')
->andWhere('m.queue_name = :queue_name') ->andWhere('m.queue_name = ?')
->setParameters([ ->setParameters([
':now' => self::formatDateTime($now), self::formatDateTime($redeliverLimit),
':queue_name' => $this->configuration['queue_name'], self::formatDateTime($now),
':redeliver_limit' => self::formatDateTime($redeliverLimit), $this->configuration['queue_name'],
]); ]);
} }