-
Bug
-
Resolution: Fixed
-
Major
-
None
The mercurial plugin ensures that a failed clone operation throws the corresponding exception, but that's not the case if the subsequent update fails: no check is done of the return code of the hg update command.
The effect is that the revision of the build is set to 000000+, which causes a huge changelog calculation in the next build, as basically the calculated log includes all the changesets in the history of the repo.
I've even seen a worse corner case, where a build is assigned up to three different revisions if, for example, two update attempts fail and the third one works when using the cache+share extension.