From c7291258d52685163df05abcd5068ae653fb42c1 Mon Sep 17 00:00:00 2001 From: Sergei Predvoditelev Date: Sun, 26 Oct 2025 17:33:24 +0300 Subject: [PATCH 1/4] Suppress "Packets out of order" warnings --- src/Command.php | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/Command.php b/src/Command.php index 9ec1d3d4..49146682 100644 --- a/src/Command.php +++ b/src/Command.php @@ -146,4 +146,19 @@ public function showDatabases(): array return $this->setSql($sql)->queryColumn(); } + + protected function pdoStatementExecute(): void + { + set_error_handler( + static fn(int $errorNumber, string $errorString): bool => + str_starts_with($errorString, 'Packets out of order. Expected '), + E_WARNING, + ); + + try { + $this->pdoStatementExecute(); + } finally { + restore_error_handler(); + } + } } From 2568f5226789e84589155caf1ad8a48029b96745 Mon Sep 17 00:00:00 2001 From: Sergei Predvoditelev Date: Sun, 26 Oct 2025 17:36:22 +0300 Subject: [PATCH 2/4] improve --- src/Command.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Command.php b/src/Command.php index 49146682..7bc8b523 100644 --- a/src/Command.php +++ b/src/Command.php @@ -12,6 +12,8 @@ use Yiisoft\Db\Query\QueryInterface; use function in_array; +use function restore_error_handler; +use function set_error_handler; use function str_starts_with; use function substr; From 7e25a85702ab43a8a43926cf89656fd60d9ed1cd Mon Sep 17 00:00:00 2001 From: Sergei Predvoditelev Date: Sun, 26 Oct 2025 17:48:15 +0300 Subject: [PATCH 3/4] fix --- src/Command.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Command.php b/src/Command.php index 7bc8b523..b46be204 100644 --- a/src/Command.php +++ b/src/Command.php @@ -153,12 +153,12 @@ protected function pdoStatementExecute(): void { set_error_handler( static fn(int $errorNumber, string $errorString): bool => - str_starts_with($errorString, 'Packets out of order. Expected '), + str_starts_with($errorString, 'Packets out of order. Expected '), E_WARNING, ); try { - $this->pdoStatementExecute(); + $this->pdoStatement?->execute(); } finally { restore_error_handler(); } From 779783e63d6b786cc0ad3be3881d4d4970549341 Mon Sep 17 00:00:00 2001 From: Sergei Predvoditelev Date: Mon, 27 Oct 2025 09:51:17 +0300 Subject: [PATCH 4/4] changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index cd9a990c..5ff49cc2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -54,6 +54,7 @@ - Enh #423: Refactor `DMLQueryBuilder::upsert()` method (@Tigrov) - Chg #428: Update expression namespaces according to changes in `yiisoft/db` package (@Tigrov) - Enh #432, #433: Update `DMLQueryBuilder::update()` method to adapt changes in `yiisoft/db` (@rustamwin, @Tigrov) +- Enh #439: Move "Packets out of order" warning suppression from Yii DB (@vjik) ## 1.2.0 March 21, 2024