[TYPO3-mvc] Extbase performance optimization

Franz Koch typo3.RemoveForMessage at elements-net.de
Wed Jun 23 12:56:21 CEST 2010


Hey Alex,

> I've uploaded a pic with my basic model relations for this situation:
>
> http://www.imagebanana.com/view/3c3xnzsn/Screenshot20100623at12.31.33PM.png
>
>
> Subproject 1 : 1 Mainproject
> Subproject 1 : n Jobs
> Mainproject 1 : 1 Customer
> Customer 1 : 1 CustomerPerson
>
>
> When I print_r my list of results i get the following result for
> mainproject field:
>
> [mainproject:protected] => Tx_Extbase_Persistence_LazyLoadingProxy Object
> (
>
> [parentObject:Tx_Extbase_Persistence_LazyLoadingProxy:private] =>
> Tx_SmediaTimetracker_Domain_Model_Subproject Object
> *RECURSION*
>
> [propertyName:Tx_Extbase_Persistence_LazyLoadingProxy:private] =>
> mainproject
>
> [fieldValue:Tx_Extbase_Persistence_LazyLoadingProxy:private] => 20
> )
>
> I read *RECURSION* does that mean some mistake? I didn't use lazy
> loading alot yet so I'm glad if you could help me progress any further.

no. By using lazyLoading the LazyLoadingProxy needs to know it's parent 
object (the object the proxy is a property of). This is needed if the 
proxy has loaded the real instance of the object and has to tell the 
parent object that the loaded object this is now the default (unchanged) 
value/state of that property (needed for persistence layer) and is 
replacing itself by that.

So that's not the issue.

What are you trying to list in your case - the main projects or 
subprojects? Are customers also lazyLoaded? If not, are their 
customerPersons lazyLoaded (if not, they also get fetched)?

-- 
kind regards,
Franz Koch


More information about the TYPO3-project-typo3v4mvc mailing list