diff --git a/UPGRADE.md b/UPGRADE.md index 6da5e0be57..6b52e2d767 100644 --- a/UPGRADE.md +++ b/UPGRADE.md @@ -4,6 +4,16 @@ The class `Doctrine\ORM\Mapping\Driver\DatabaseDriver` is deprecated without replacement. +## Add `Doctrine\ORM\Query\OutputWalker` interface, deprecate `Doctrine\ORM\Query\SqlWalker::getExecutor()` + +Output walkers should implement the new `\Doctrine\ORM\Query\OutputWalker` interface and create +`Doctrine\ORM\Query\Exec\SqlFinalizer` instances instead of `Doctrine\ORM\Query\Exec\AbstractSqlExecutor`s. +The output walker must not base its workings on the query `firstResult`/`maxResult` values, so that the +`SqlFinalizer` can be kept in the query cache and used regardless of the actual `firstResult`/`maxResult` values. +Any operation dependent on `firstResult`/`maxResult` should take place within the `SqlFinalizer::createExecutor()` +method. Details can be found at https://github.com/doctrine/orm/pull/11188. + + # Upgrade to 3.2 ## Deprecate the `NotSupported` exception