From 639e68b1b777509c38e55d65d1ec6fb3ecc7f1bd Mon Sep 17 00:00:00 2001 From: Ivan Yivoff Date: Sat, 11 Sep 2021 13:25:24 +0200 Subject: [PATCH 1/2] define TracingStatement alias conditionally --- src/aliases.php | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/aliases.php b/src/aliases.php index f8e6bc18..89eddab1 100644 --- a/src/aliases.php +++ b/src/aliases.php @@ -87,8 +87,10 @@ class_alias(MiddlewareInterface::class, DoctrineMiddlewareInterface::class); class_alias(ExceptionConverterDriverInterface::class, LegacyExceptionConverterDriverInterface::class); } -if (class_exists(Result::class)) { - class_alias(TracingStatementForV3::class, 'Sentry\SentryBundle\Tracing\Doctrine\DBAL\TracingStatement'); -} elseif (interface_exists(Result::class)) { - class_alias(TracingStatementForV2::class, 'Sentry\SentryBundle\Tracing\Doctrine\DBAL\TracingStatement'); +if (!class_exists('Sentry\SentryBundle\Tracing\Doctrine\DBAL\TracingStatement')) { + if (class_exists(Result::class)) { + class_alias(TracingStatementForV3::class, 'Sentry\SentryBundle\Tracing\Doctrine\DBAL\TracingStatement'); + } elseif (interface_exists(Result::class)) { + class_alias(TracingStatementForV2::class, 'Sentry\SentryBundle\Tracing\Doctrine\DBAL\TracingStatement'); + } } From 7ceb4c286986042d21c7f0576caddb552889b0d6 Mon Sep 17 00:00:00 2001 From: yivi Date: Sun, 12 Sep 2021 08:04:18 +0200 Subject: [PATCH 2/2] CHANGELOG entry --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 105ea7a2..d330501b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +- Fix: Test if `TracingStatement` exists before attempting to create the class alias, otherwise it breaks when opcache is enabled. (#552) + ## 4.2.2 (2021-08-30) - Fix missing instrumentation of the `Statement::execute()` method of Doctrine DBAL (#548)