[ https://issues.apache.org/jira/browse/IVY-1120?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12753852#action_12753852 ]
Lucas Lech commented on IVY-1120: --------------------------------- I've been running two parallel debugging sessions - the ant task that was invoking *ivy:buildnumber* was in first session executed directly and in another one it was executed as dependency of some other task (somewhere down the line of dependency graph) - few other ivy tasks, like ivy:publish have been executed before so in both sessions *ivy:buildnumber* has been fed with exactly the same attributes clearly the comparison in the matcher is broken unless there is something I'm missing here after replacing == with .equals & rebuilding ivy, this task started to work properly > IvyBuildNumber non-deterministic behaviour > ------------------------------------------ > > Key: IVY-1120 > URL: https://issues.apache.org/jira/browse/IVY-1120 > Project: Ivy > Issue Type: Bug > Components: Ant > Affects Versions: 2.1.0-RC2 > Environment: ant 1.7.1, windows xp > Reporter: Lucas Lech > > IvyBuildNumber.java -> doExecute() > creates an inline patternMatcher with this method: > {code:title=IvyBuildNumber.java|borderStyle=solid} > public Matcher getMatcher(String expression) { > if ((expression == organisation) > || (expression == module) > || (expression == branch)) { > return exact.getMatcher(expression); > } > return regexp.getMatcher(expression); > } > {code} > I'm guessing the == comparison is a typo ? Shouldn't it be saying *.equals* ? > I've been having issues with this task - non-deterministic results - I got > down in my debug to this place where I get wrong matcher when > *reference address comparison* fails. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.