Skip to content

Commit c081482

Browse files
l-voostrolucky
authored andcommitted
Update priority of built-in middleware
With the default priority, middlewares for logging and profiler don't see the eventual query changes performed by userland middlewares (that have by default a priority of 0)
1 parent 309f5f4 commit c081482

File tree

2 files changed

+11
-11
lines changed

2 files changed

+11
-11
lines changed

DependencyInjection/DoctrineExtension.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1187,14 +1187,14 @@ private function registerDbalMiddlewares(
11871187

11881188
$loggingMiddlewareAbstractDef = $container->getDefinition('doctrine.dbal.logging_middleware');
11891189
foreach ($connWithLogging as $connName) {
1190-
$loggingMiddlewareAbstractDef->addTag('doctrine.middleware', ['connection' => $connName]);
1190+
$loggingMiddlewareAbstractDef->addTag('doctrine.middleware', ['connection' => $connName, 'priority' => 10]);
11911191
}
11921192

11931193
$container->getDefinition('doctrine.debug_data_holder')->replaceArgument(0, $connWithBacktrace);
11941194
$debugMiddlewareAbstractDef = $container->getDefinition('doctrine.dbal.debug_middleware');
11951195
foreach ($connWithProfiling as $connName) {
11961196
$debugMiddlewareAbstractDef
1197-
->addTag('doctrine.middleware', ['connection' => $connName]);
1197+
->addTag('doctrine.middleware', ['connection' => $connName, 'priority' => 10]);
11981198
}
11991199
}
12001200
}

Tests/DependencyInjection/DoctrineExtensionTest.php

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1321,9 +1321,9 @@ public function testRegistrationsWithMiddlewaresAndSfDebugMiddleware(): void
13211321
$loggingMiddlewareTagAttributes = $attributes;
13221322
}
13231323

1324-
$this->assertTrue(in_array(['connection' => 'conn1'], $loggingMiddlewareTagAttributes, true));
1325-
$this->assertFalse(in_array(['connection' => 'conn2'], $loggingMiddlewareTagAttributes, true));
1326-
$this->assertFalse(in_array(['connection' => 'conn3'], $loggingMiddlewareTagAttributes, true));
1324+
$this->assertTrue(in_array(['connection' => 'conn1', 'priority' => 10], $loggingMiddlewareTagAttributes, true));
1325+
$this->assertFalse(in_array(['connection' => 'conn2', 'priority' => 10], $loggingMiddlewareTagAttributes, true));
1326+
$this->assertFalse(in_array(['connection' => 'conn3', 'priority' => 10], $loggingMiddlewareTagAttributes, true));
13271327

13281328
$this->assertTrue($container->hasDefinition('doctrine.dbal.debug_middleware'));
13291329
$this->assertTrue($container->hasDefinition('doctrine.debug_data_holder'));
@@ -1338,9 +1338,9 @@ public function testRegistrationsWithMiddlewaresAndSfDebugMiddleware(): void
13381338
$debugMiddlewareTagAttributes = $attributes;
13391339
}
13401340

1341-
$this->assertFalse(in_array(['connection' => 'conn1'], $debugMiddlewareTagAttributes, true));
1342-
$this->assertTrue(in_array(['connection' => 'conn2'], $debugMiddlewareTagAttributes, true));
1343-
$this->assertTrue(in_array(['connection' => 'conn3'], $debugMiddlewareTagAttributes, true));
1341+
$this->assertFalse(in_array(['connection' => 'conn1', 'priority' => 10], $debugMiddlewareTagAttributes, true));
1342+
$this->assertTrue(in_array(['connection' => 'conn2', 'priority' => 10], $debugMiddlewareTagAttributes, true));
1343+
$this->assertTrue(in_array(['connection' => 'conn3', 'priority' => 10], $debugMiddlewareTagAttributes, true));
13441344

13451345
$arguments = $container->getDefinition('doctrine.debug_data_holder')->getArguments();
13461346
$this->assertCount(1, $arguments);
@@ -1383,7 +1383,7 @@ public function testDefinitionsToLogAndProfile(): void
13831383
$loggingMiddlewareTagAttributes = $attributes;
13841384
}
13851385

1386-
$this->assertTrue(in_array(['connection' => 'conn1'], $loggingMiddlewareTagAttributes, true), 'Tag with connection conn1 not found for doctrine.dbal.logging_middleware');
1386+
$this->assertTrue(in_array(['connection' => 'conn1', 'priority' => 10], $loggingMiddlewareTagAttributes, true), 'Tag with connection conn1 not found for doctrine.dbal.logging_middleware');
13871387
$this->assertFalse(in_array(['connection' => 'conn2'], $loggingMiddlewareTagAttributes, true), 'Tag with connection conn2 found for doctrine.dbal.logging_middleware');
13881388

13891389
$abstractMiddlewareDefTags = $container->getDefinition('doctrine.dbal.debug_middleware')->getTags();
@@ -1396,8 +1396,8 @@ public function testDefinitionsToLogAndProfile(): void
13961396
$debugMiddlewareTagAttributes = $attributes;
13971397
}
13981398

1399-
$this->assertFalse(in_array(['connection' => 'conn1'], $debugMiddlewareTagAttributes, true), 'Tag with connection conn1 found for doctrine.dbal.debug_middleware');
1400-
$this->assertTrue(in_array(['connection' => 'conn2'], $debugMiddlewareTagAttributes, true), 'Tag with connection conn2 not found for doctrine.dbal.debug_middleware');
1399+
$this->assertFalse(in_array(['connection' => 'conn1', 'priority' => 10], $debugMiddlewareTagAttributes, true), 'Tag with connection conn1 found for doctrine.dbal.debug_middleware');
1400+
$this->assertTrue(in_array(['connection' => 'conn2', 'priority' => 10], $debugMiddlewareTagAttributes, true), 'Tag with connection conn2 not found for doctrine.dbal.debug_middleware');
14011401
}
14021402

14031403
public function testDefinitionsToLogQueriesLoggingFalse(): void

0 commit comments

Comments
 (0)