-
Type: Improvement
-
Status: Resolved
-
Priority: Minor
-
Resolution: Fixed
-
Affects Version/s: 5.5
-
Fix Version/s: 5.5.0-HF04, 5.6-RC1, 5.6
-
Component/s: Core VCS
There's a performance issue (quadratic time behavior) on calling getChildren when there are many children.
This is visible as:
at java.util.LinkedList.contains(LinkedList.java:315) at org.nuxeo.ecm.core.storage.sql.Selection.addExisting(Selection.java:159) at org.nuxeo.ecm.core.storage.sql.SelectionContext.recordExisting(SelectionContext.java:133) at org.nuxeo.ecm.core.storage.sql.PersistenceContext.getFragmentFromFetchedRow(PersistenceContext.java:688) at org.nuxeo.ecm.core.storage.sql.PersistenceContext.getFragmentsFromFetchedRows(PersistenceContext.java:630) at org.nuxeo.ecm.core.storage.sql.SelectionContext.getSelectionFragments(SelectionContext.java:202) at org.nuxeo.ecm.core.storage.sql.PersistenceContext.getChildren(PersistenceContext.java:1250) at org.nuxeo.ecm.core.storage.sql.SessionImpl.getChildren(SessionImpl.java:952)