stable

Clone or download

Read-only

request #13102 Changeset diff of artifact links performance issue

Test (before) on an Artifact on a customer instance: - 241 032 SQL requests - Wall time 1mn53 - 70MB of RAM (for 556 follow-up comments and 210 links, no natures used) And other crazy number like: - There are 556 calls to Tracker_Artifact_ChangesetValue_ArtifactLinkDiff constructor that generates 119227 calls to fillUpdatedByNature ! - 238 877 calls to NaturePresenterFactory::getFromShortname This patch allows to save - 239'000 SQL requests - Wall time reduced by 90% (11s, mainly due to computed fields) - RAM doesn' change much There are still some crazy numbers though. Change-Id: Ib8f96afefb505f926c789367fc39400823f605a1

Modified Files

Name
M plugins/tracker/include/Tracker/Artifact/ChangesetValue/ArtifactLink/AddedLinkByNatureCollection.php +5 −17 Go to diff View file
M plugins/tracker/include/Tracker/Artifact/ChangesetValue/ArtifactLink/RemovedLinkCollection.php +1 −5 Go to diff View file
M plugins/tracker/include/Tracker/Artifact/ChangesetValue/ArtifactLink/UpdatedNatureLinkCollection.php +5 −13 Go to diff View file
M plugins/tracker/include/Tracker/Artifact/Tracker_ArtifactLinkInfo.class.php +35 −27 Go to diff View file
M plugins/tracker/include/Tracker/Artifact/Tracker_Artifact_ChangesetValue_ArtifactLinkDiff.class.php +5 −6 Go to diff View file
M plugins/tracker/include/Tracker/FormElement/Field/ArtifactLink/SubmittedValueConvertor.php +3 −2 Go to diff View file
M plugins/tracker/include/Tracker/Tracker.class.php +7 −2 Go to diff View file
A plugins/tracker/phpunit/Tracker/Artifact/ChangesetValue/ArtifactLinkDiffTest.php +222 −0 Go to diff View file
M plugins/tracker/site-content/en_US/tracker.tab +0 −6 Go to diff View file
M plugins/tracker/site-content/fr_FR/LC_MESSAGES/tuleap-tracker.po +22 −0 Go to diff View file
M plugins/tracker/site-content/fr_FR/tracker.tab +0 −6 Go to diff View file
M plugins/tracker/tests/Tracker/FormElement/Field/ArtifactLink/ArtifactLinkValueSaverTest.php +6 −6 Go to diff View file
M plugins/tracker/tests/Tracker/XML/Exporter/ChangesetValue/ChangesetValueArtifactLinkXMLExporterTest.php +8 −6 Go to diff View file
M plugins/tracker/tests/Tracker_Artifact_ChangesetValue_ArtifactLinkTest.php +125 −89 Go to diff View file
M tests/rest/bin/setup.sh +9 −9 Go to diff View file