Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DDC-3481: [GH-1241] [3.0] [POC] lazy-load on a per-property base #4292

Closed
4 tasks
doctrinebot opened this issue Jan 9, 2015 · 3 comments
Closed
4 tasks
Assignees
Labels

Comments

@doctrinebot
Copy link

Jira issue originally created by user @doctrinebot:

This issue is created automatically through a Github pull request on behalf of Ocramius:

Url: #1241

Message:

This is just a proof of concept that I hacked together real quick.

This changes how proxies are generated and lazy-loaded in a very radical way:

  • method calls do not cause lazy-loading
  • lazy-loading is triggered by access to non-transient properties (things that need to be lazy-loaded)
  • access to identifiers or non-mapped properties won't cause lazy-loading

Following BC breaks need to be fixed or discussed before going forward on this idea:

  • proxies don't implement Doctrine\Common\Proxy\Proxy anymore, but ProxyManager\Proxy\GhostObjectInterface (BC break, needs fixing, can be easily done with some effort)
  • serialize($proxy) now causes proxy initialization (probably needs fixing, as this is a major BC break)

Pending TODOs:

  • cloning a proxy is still not fully supported (requires dedicated logic in **clone)
  • this is just a PoC, so the code that writes proxies to disk is not yet in place
@doctrinebot
Copy link
Author

@doctrinebot
Copy link
Author

Comment created by @doctrinebot:

A related Github Pull-Request [GH-1241] was labeled:
#1241

1 similar comment
@doctrinebot
Copy link
Author

Comment created by @doctrinebot:

A related Github Pull-Request [GH-1241] was labeled:
#1241

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants