8000 [Cache][Lock] Identify missing table in pgsql correctly and address f… · symfony/symfony@98fe71a · GitHub
[go: up one dir, main page]

Skip to content

Commit 98fe71a

Browse files
arifsznnicolas-grekas
authored andcommitted
[Cache][Lock] Identify missing table in pgsql correctly and address failing integration tests
1 parent 96e1d42 commit 98fe71a

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

src/Symfony/Component/Cache/Adapter/PdoAdapter.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -600,10 +600,10 @@ private function getServerVersion(): string
600600
private function isTableMissing(\PDOException $exception): bool
601601
{
602602
$driver = $this->driver;
603-
$code = $exception->errorInfo ? $exception->errorInfo[1] : $exception->getCode();
603+
[$sqlState, $code] = $exception->errorInfo ?? [null, $exception->getCode()];
604604

605605
switch (true) {
606-
case 'pgsql' === $driver && '42P01' === $code:
606+
case 'pgsql' === $driver && '42P01' === $sqlState:
607607
case 'sqlite' === $driver && str_contains($exception->getMessage(), 'no such table:'):
608608
case 'oci' === $driver && 942 === $code:
609609
case 'sqlsrv' === $driver && 208 === $code:

src/Symfony/Component/Lock/Store/PdoStore.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -330,10 +330,10 @@ private function getCurrentTimestampStatement(): string
330330
private function isTableMissing(\PDOException $exception): bool
331331
{
332332
$driver = $this->getDriver();
333-
$code = $exception->errorInfo ? $exception->errorInfo[1] : $exception->getCode();
333+
[$sqlState, $code] = $exception->errorInfo ?? [null, $exception->getCode()];
334334

335335
switch (true) {
336-
case 'pgsql' === $driver && '42P01' === $code:
336+
case 'pgsql' === $driver && '42P01' === $sqlState:
337337
case 'sqlite' === $driver && str_contains($exception->getMessage(), 'no such table:'):
338338
case 'oci' === $driver && 942 === $code:
339339
case 'sqlsrv' === $driver && 208 === $code:

0 commit comments

Comments
 (0)
0