Parameterized VCS root -- performance?

Answered

Are there performance implications of using parameterized VCS roots? We have > 2600 build configurations, and > 1000 VCS roots. We could manage them more effectively if they were parameterized, but we're not sure that won't cause performance problems. Comments?

Thanks

Mark Johnson

0
3 comments

Hi,

there are no known problems due to use of parameters in VCS roots. I think use of parameters can bring benefits in terms of performance if you have duplicate VCS roots, because TeamCity will collect changes for every VCS root with resolved parameters only once.

0
Avatar
Permanently deleted user

This ticket:https://teamcity-support.jetbrains.com/hc/en-us/community/posts/206206249-Shared-VCS-root mentions that in fact TeamCity will create "required number of concrete VCS roots" out of single meta-root. Is it still the case? Will TC collect changes for each individual "concrete" VCS root? Will this impede performance? Will it make us regret this solution otherwize?

PS. I am speaking about the same projects as Mark above.

0

It is still the case. TeamCity resolves all parameters and collect changes for VCS root with resolved parameters. It is basically the same as if you created a VCS root with resolved parameters manually. Some benefit in terms of performance can be gained if several configurations use the VCS root with same parameters. If you create VCS roots for them manually, then TeamCity will collect changes in each of them, even if these roots point to the same repository. If you use parameter, then changes will be collected only once. 

If you are in doubt, try migrating part of build configurations to the VCS root with parameters and check the performance.

0

Please sign in to leave a comment.