We have a couple of configurations, suppose they're called A and B.
Configuration 'A' creates certain artifcats that later must be re-used by configuration 'B'.
In addition, configuration A's VCS roots uses branches (all are monitored by TeamCity).
In order to allow configuration B to pick up artifacts based on the correct branch, it was advised that this configuration not only must set build A as artifact dependencies, but also define a snapshot dependency on build A.
The issue is, that this seems to always trigger a build of A whenever building B.
Why is this needed? Can this be avoided?
There should be an earlier suitable build of A (with same sources) that was already built and artifacts created for it.. Why should another build be kicked, just to run configuration B?
Have you specified the option to "Do not run new build if there is a suitable one"? Could you also indicate what is the policy to get the artifact as configured in artifact dependencies (check "Get artifacts from:" option)? Please specify on which Teamcity version you see this.