Affects Version/s: 7.1.X, 7.2.X
When adding/updating/removing a Journal Article, the JournalArticleStagingModelListener class executes changeset collection updates as needed. However, in non-staged environments, these changeset collection modifications are not needed, thus all the methods eventually exit without making any changes.
With the inclusion of
LPS-102225 in master, we exit the model listener methods early, saving time and performance costs. In some customer examples, the retrieval of JournalArticleResourceArticles may take a long time to due the amount of resources. However, if this occurs in a non-staged environment, this is a complete waste of resources, since the method will eventually exit without performing any changes. LPS-102225 should not be fully backported because it is a story ticket, however the performance boost gained in one of the commits should be.
Steps to reproduce:
- create a Journal Article
- Update the article 1000+ times, noting the time it takes to update each time.
Expected: the first update takes as long as the last update
Actual: The last update takes about 10x longer, because each previous version is iterated through
Reproduced on 72x