Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Resolves the performance issue #1.
After debugging and measuring execution times in several scenarios, it turns out that the performance issue is related to the number of translations passed to
ModelTransformer@applyTranslations
.For example if we have a collection of 1000 objects to be translated and each one of them has 5 translated properties,
ModelTransformer@applyTranslations
has to loop over these 5000 translations for every one of those 1000 objects.This gets even worse when we perform deep translation.
Solution
Passing only the required translations to
ModelTransformer@applyTranslations
resolves this issue.Required translations are the model translations and the relations translations if we have to perform deep translation.