diff options
author | Thomas Steur <tsteur@users.noreply.github.com> | 2021-01-28 08:03:16 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-28 08:03:16 +0300 |
commit | 2638ea37f5f05149ca0ff9baa6f7edbc80e97c95 (patch) | |
tree | d5397c339f6189d1bbb711f1cfa777702a301874 /core | |
parent | 43c920cb44eb606bc8c16d2344ecec762a20ca21 (diff) |
Ignore query failure in Matomo for WordPress when checking if logtmptable exists (#17158)
Needed this in https://github.com/matomo-org/wp-matomo/pull/417 and documented it in https://github.com/matomo-org/wp-matomo/wiki/Database
refs https://github.com/matomo-org/wp-matomo/issues/416
refs https://wordpress.org/support/topic/error-in-php-log-after-manual-update-to-v4-1-2/
refs https://wordpress.org/support/topic/archive-warning-error-unserializing-wp_matomo_logtmpsegment/
refs https://wordpress.org/support/topic/php-error-with-vn-4-1-2/
Previously, I had detected this query like this: https://github.com/matomo-org/wp-matomo/pull/417/files#diff-c4e75ddbbcdde3ba408b5a87e273371dd3420a5d0b90a87bb4295e81787cdc31L365 but now it looks like `SELECT /*+MAX_EXECUTION_TIME....` and it's quite hard to detect it without trying to reconstruct the query or using regex. This way it'll be more future proof
Diffstat (limited to 'core')
-rw-r--r-- | core/DataAccess/LogAggregator.php | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/core/DataAccess/LogAggregator.php b/core/DataAccess/LogAggregator.php index a4850ebe71..159fdd5b89 100644 --- a/core/DataAccess/LogAggregator.php +++ b/core/DataAccess/LogAggregator.php @@ -240,7 +240,7 @@ class LogAggregator { try { // using DROP TABLE IF EXISTS would not work on a DB reader if the table doesn't exist... - $this->getDb()->fetchOne('SELECT 1 FROM ' . $segmentTablePrefixed . ' LIMIT 1'); + $this->getDb()->fetchOne('SELECT /* WP IGNORE ERROR */ 1 FROM ' . $segmentTablePrefixed . ' LIMIT 1'); $tableExists = true; } catch (\Exception $e) { $tableExists = false; |