I'm sorry if I'm repeating this - I couldn't find an answer for this problem. I'm also new to TeamCity.
I have pretty much all default settings; there is only one project defined, using sln2008 runner, build triggering enabled when files are checked in to SVN, and VCS labeling mode is set to "successful only".
After I started a test build (which is always successful, as it's basically an almost empty .NET 2.0 project), it looks like that label is set at SVN (verified; the project tree is copied to /tags/build-1.0.X.X, which was the sample labeling rule I took from the docs), then it looks like TeamCity detects the new check in (the SVN label), and it builds again, applies label to that new build again, and so on. I have been desperately looking for a setting to exclude these TeamCity check-ins somehow (maybe by comparing the username of who did the tag with its own) - but nothing.
I'll probably have to turn off auto-labeling and to labeling manually, which is fine - I just wish this feature works, cause everything else in the system looks perfect.
I'm also looking for more options in labeling rules; e.g. it'd be nice to add a date and time to the label name. Thanks to whoever can help resolve this.