[PR #840] [CLOSED] [DON'T MERGE] [PoC] Using the concepts of LazyMap to speed up ORM internals #8783

Closed
opened 2026-01-22 16:01:41 +01:00 by admin · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/doctrine/orm/pull/840
Author: @Ocramius
Created: 11/5/2013
Status: Closed

Base: masterHead: proof-of-concept/lazy-map-implementation


📝 Commits (3)

  • db7f79c Using the concepts of LazyMap to speed up ORM internals
  • 8666a8d Applying optimizations deriving from LazyMap-style direct property access also to hydrators and UoW
  • b189d53 Cleaning up basic persister metadata usage (applying direct property access as well)

📊 Changes

9 files changed (+117 additions, -107 deletions)

View changed files

📝 lib/Doctrine/ORM/EntityManager.php (+4 -4)
📝 lib/Doctrine/ORM/Internal/Hydration/AbstractHydrator.php (+9 -2)
📝 lib/Doctrine/ORM/Internal/Hydration/ArrayHydrator.php (+1 -1)
📝 lib/Doctrine/ORM/Internal/Hydration/ObjectHydrator.php (+8 -38)
📝 lib/Doctrine/ORM/Internal/Hydration/SimpleObjectHydrator.php (+1 -1)
📝 lib/Doctrine/ORM/Mapping/ClassMetadataFactory.php (+15 -0)
📝 lib/Doctrine/ORM/Persisters/BasicEntityPersister.php (+26 -17)
📝 lib/Doctrine/ORM/Tools/SchemaValidator.php (+1 -1)
📝 lib/Doctrine/ORM/UnitOfWork.php (+52 -43)

📄 Description

For reference, see https://github.com/Ocramius/LazyMap

This is just a Proof of Concept - not meant to be merged

Still checking the performance test suite.

The main advantage here is getting rid of metadata that has been shared across all the different components. If this approach is acceptable, we can limit ourselves to passing around the class metadata factory


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/doctrine/orm/pull/840 **Author:** [@Ocramius](https://github.com/Ocramius) **Created:** 11/5/2013 **Status:** ❌ Closed **Base:** `master` ← **Head:** `proof-of-concept/lazy-map-implementation` --- ### 📝 Commits (3) - [`db7f79c`](https://github.com/doctrine/orm/commit/db7f79cf111936ee6342d7b8dd397fa73449cd93) Using the concepts of LazyMap to speed up ORM internals - [`8666a8d`](https://github.com/doctrine/orm/commit/8666a8d6d4462991f9322263a58ce44b9bf3fdd2) Applying optimizations deriving from LazyMap-style direct property access also to hydrators and UoW - [`b189d53`](https://github.com/doctrine/orm/commit/b189d53d69788c8bc563d223d4b6629a9a161da3) Cleaning up basic persister metadata usage (applying direct property access as well) ### 📊 Changes **9 files changed** (+117 additions, -107 deletions) <details> <summary>View changed files</summary> 📝 `lib/Doctrine/ORM/EntityManager.php` (+4 -4) 📝 `lib/Doctrine/ORM/Internal/Hydration/AbstractHydrator.php` (+9 -2) 📝 `lib/Doctrine/ORM/Internal/Hydration/ArrayHydrator.php` (+1 -1) 📝 `lib/Doctrine/ORM/Internal/Hydration/ObjectHydrator.php` (+8 -38) 📝 `lib/Doctrine/ORM/Internal/Hydration/SimpleObjectHydrator.php` (+1 -1) 📝 `lib/Doctrine/ORM/Mapping/ClassMetadataFactory.php` (+15 -0) 📝 `lib/Doctrine/ORM/Persisters/BasicEntityPersister.php` (+26 -17) 📝 `lib/Doctrine/ORM/Tools/SchemaValidator.php` (+1 -1) 📝 `lib/Doctrine/ORM/UnitOfWork.php` (+52 -43) </details> ### 📄 Description For reference, see https://github.com/Ocramius/LazyMap This is just a Proof of Concept - not meant to be merged Still checking the performance test suite. The main advantage here is getting rid of metadata that has been shared across all the different components. If this approach is acceptable, we can limit ourselves to passing around the class metadata factory --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
admin added the pull-request label 2026-01-22 16:01:41 +01:00
admin closed this issue 2026-01-22 16:01:42 +01:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: doctrine/archived-orm#8783