doctrine / orm

Doctrine Object Relational Mapper (ORM)
https://www.doctrine-project.org/projects/orm.html
MIT License
9.86k stars 2.5k forks source link

Merge 2.19.x into 3.1.x #11392

Closed derrabus closed 3 months ago

derrabus commented 3 months ago

@greg0ire @beberlei I need help with the merge-up.

greg0ire commented 3 months ago

@derrabus @beberlei on 2.x, phpbench runs on PHP 7.4. I reproduce the issue locally on 2.x, with PHP 8.3 The benchmark works by calling a method that sounds like it is internal: https://github.com/doctrine/orm/blob/4175edf31174a04037c07dcea14c86895cccc1ae/tests/Performance/LazyLoading/ProxyInitializationTimeBench.php#L39

So maybe this issue does not affect end users at all.

derrabus commented 3 months ago

So maybe this issue does not affect end users at all.

It doesn't. The bench installs mock implementations of UoW and friends to prevent the load() calls from actually hitting a database. Apparently, these mocks were incomplete and need to be adjusted to the changes from #11376.

derrabus commented 3 months ago

I've pushed a commit that fixes the mocks. Shall I backport the change and make PHPBench on 2.19 run on PHP 8.1+ with lazy ghosts enabled? Or shall we leave the lower branch as it is now?

greg0ire commented 3 months ago

I think it's a good idea to avoid such surprises on merge up so yes, please do that