TeamCity 9.0 resurrects old branches

Hi

I am using TeamCity professional with code hosted in a mercurial bitbucket repository.
Since installation of version 9.0 ***ALL*** my old branches (closed or merged branches) are triggered to build each time a change is pushed to the default branch.
It's a nightmare.

Is this a known problem of the new version?

Thank you.

14 comments
Comment actions Permalink

Hi Enrique,

Could you please attach teamcity-server.log and teamcity-vcs.log files? Do you have only one VCS root attached to the build configuration? Do you have other VCS roots watching the same repository?
Do you have any related internal properties configured?

0
Comment actions Permalink

Hi

Attached are the log files you requested. There are many exceptions on file temcity-server.log.

I have a project called Osted with 2 configurations Libs and Osted with several build steps. There is only one VCS root.
I have no internal property configured.

Thank you.



Attachment(s):
logs.rar.zip
0
Comment actions Permalink

I've created the issue https://youtrack.jetbrains.com/issue/TW-39314 about exceptions in teamcity-server.log. Please watch/vote for it.

0
Comment actions Permalink

Hi Enrique,

what branch specifications do you use in VCS root settings in Libs and Osted build configurations?

0
Comment actions Permalink

Hi

I use this specification

+:*

from months.

After installing 9.0 I did two things:

1) I tried to store (without luck) the project settings in Mercurial. TeamCity could not create the needed branch in Bitbucket (the force new branch argument was missing in the command issued by TeamCity).
2) I downloaded the last version of Nuget and set as default


After 1) the queue was filled with a build for each branch in the repository (all the branches) when any change is detected in default branch.

0
Comment actions Permalink

Thanks for details. I've created an issue about creating a branch in mercurial: https://youtrack.jetbrains.com/issue/TW-39321, please watch it. I'll try reproducing a triggering problem and get back to you.

0
Comment actions Permalink

Hi Enrique,

sorry cannot reproduce the triggering so far. We had similar issues (https://youtrack.jetbrains.com/issue/TW-33880, https://youtrack.jetbrains.com/issue/TW-37796), but they happens when build configurations have VCS roots where branches don't match. You have a single VCS root with +:* branch specification in all configurations, so it is something different. Did you enable option 'show changes from snapshot dependencies' in the Osted build configuration? What are the settings of VCS trigger there? What changes TeamCity shows in redundant builds in non-default branches?

0
Comment actions Permalink

Did you enable option 'show changes from snapshot dependencies' in the Osted build configuration?
What are the settings of VCS trigger there?

NO
See included image


What changes TeamCity shows in redundant builds in non-default branches?
Display No changes
See included image

NOTE:
I suspect that the problem is the incorrect detection of changes.
In configuration Libs the VCS trigger rules are

-:**
+:Libs/**

However TeamCity detects a change on next file (and enqueue a build)

Osted/Configuration/Admin/FormMachines.cs

This file is not include under path Libs.



Attachment(s):
VCS_trigger_rules.png
VCS.png
0
Comment actions Permalink

I have the same problem. I have one VCS root configured for the project. The VCS root has configured branches for feature branches. On each commit to the master all feature branches are triggered as well.

0
Comment actions Permalink

Found a solution which work a least for me.

The problem accours if you store the build configurations in git and use the same VCS root for the projects.

Making 2 VCS roots one for the build configurations and one for the projects solves the problem

0
Comment actions Permalink

I don't store the build configuration settings in the VCS, I tried it but it failed.
This was the first action I did with version 9.0.

EDITED

Sorry, I confirm you that the problem is storing the configuration settings in the same VCS.


That was enabled in my root project, althought not working because TeamCity cant create the branch.
I removed that and now all seems correct as before.

0
Comment actions Permalink

Still cannot reproduce that. I've checked both cases when TeamCity cannot create a branch for versioned settings and when versioned settings root is attached to a build configuration. For me commit in the default branch doesn't trigger builds in untrelated branches. I'm not sure if the enabled versioned settings can cause triggering, because VCS trigger ignores versioned settings changes (unless versioned settings root is attached to a build configuration, in which case these changes are treated as regular ones, but again they shouldn't affect unrelated branches).

Alexander, Enrique if you can reproduce the problem please describe exact stepts to do so, I'd be happy to fix it.

0
Comment actions Permalink

This is what I did.

* Create a new project (test-root)
* Add a VCS (git) root to the project
- Set a branch definition for branches starting with ci-
* Create a sub project (test-sub)
* Add a build defintion
* Set the VCS root to the previous created VCS root
* Add a default CVS build trigger.
* Checkin to master -> master gets build
* Checkin to ci-test -> ci-test gets build

* Activate "Versioned settings" for the project test-root
* Set VCS to currently only VCS root

* Checkin to master -> master AND ci-test get build

* Add a 2nd VCS root and switch "Versioned settings" to that root
* Checkin to master -> master gets build
* Checkin to ci-test -> ci-test gets build


* Switch "Versioned settings" back to the first VCS root

* Checkin to master -> master AND ci-test get build




hope that helps

Alexander
0
Comment actions Permalink

Thank you very much Alexander, I was able to reproduce the problem and created an issue: https://youtrack.jetbrains.com/issue/TW-39378, please watch it.

0

Please sign in to leave a comment.