Description of problem: copyTrans runs too slowly Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1.Push from any client with copytrans enabled 2.Wait Actual results: It is slow Expected results: Slightly less slow Additional info:
Refactored the copy trans service to perform less database accesses and avoid unnecessary invocations. The copy trans service is also being invoked directly after pushing a resource instead of using a Seam event. Should be anywhere between 60-80% faster than before based on tests. See: https://github.com/zanata/zanata/commit/aa25f30d213dcefe0f70c9119c7202cdfe4be88c https://github.com/zanata/zanata/commit/8b5200b649e7835f9e98851d3503445ed5a8c012 https://github.com/zanata/zanata/commit/9bb7ae05ff983943ed3c70a92627df54c74c06cd
Verified in 1.5 Push operations with copytrans now take up to ~30% less time with my test data.
Created attachment 566721 [details] Proposed inversion of copytrans loops to iterate over TransUnits before locales Master branch has diverged from this, it is included here for reference (would likely be a messy merge if applied).