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

[Data Objects] Many-To-Many Object Relation Performance Issues in Admin UI #3737

Open
brusch opened this Issue Dec 11, 2018 · 6 comments

Comments

3 participants
@brusch
Copy link
Member

brusch commented Dec 11, 2018

The problem is that the data-type doesn't utilize getRelationData() anymore to obtain the relational data, instead all objects are loaded and getDataForEditmode() is called.

See:

$relations = $object->getRelationData($refKey, !$fielddefinition->isRemoteOwner(), $refId);

@weisswurstkanone

This comment has been minimized.

Copy link
Contributor

weisswurstkanone commented Dec 12, 2018

are you referring to this commit ?
2b99cea

@weisswurstkanone weisswurstkanone moved this from To do to In progress in 10/12/2018 - 04/01/2019 Jan 2, 2019

weisswurstkanone added a commit that referenced this issue Jan 2, 2019

@weisswurstkanone

This comment has been minimized.

Copy link
Contributor

weisswurstkanone commented Jan 2, 2019

temporary fix: use the old strategy if no visible fields are selected.
long-term solution: lazy load the metadata (just like the path formatter does)

@blankse

This comment has been minimized.

Copy link
Contributor

blankse commented Jan 4, 2019

I don't test it, but after looking in the fix i think it is not enough. The getter method will also be executed. Am I wrong?

@weisswurstkanone

This comment has been minimized.

Copy link
Contributor

weisswurstkanone commented Jan 4, 2019

when, where ?

@blankse

This comment has been minimized.

Copy link
Contributor

blankse commented Jan 4, 2019

} elseif ($fielddefinition instanceof ManyToManyObjectRelation && !$fielddefinition instanceof ReverseManyToManyObjectRelation) {
$fieldData = $object->$getter();
$data = $fielddefinition->getDataForEditmode($fieldData, $object, $objectFromVersion);

@weisswurstkanone

This comment has been minimized.

Copy link
Contributor

weisswurstkanone commented Jan 4, 2019

good catch

@brusch brusch added this to To do in 07/01/2019 - 18/01/2019 via automation Jan 7, 2019

@brusch brusch added this to To do in 21/01/2019 - 01/02/2019 via automation Jan 21, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment