You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ratis.apache.org by "Attila Doroszlai (Jira)" <ji...@apache.org> on 2020/05/03 05:57:00 UTC

[jira] [Assigned] (RATIS-639) Inconsistent pattern for variable names

     [ https://issues.apache.org/jira/browse/RATIS-639?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Attila Doroszlai reassigned RATIS-639:
--------------------------------------

    Assignee: Attila Doroszlai

> Inconsistent pattern for variable names
> ---------------------------------------
>
>                 Key: RATIS-639
>                 URL: https://issues.apache.org/jira/browse/RATIS-639
>             Project: Ratis
>          Issue Type: Bug
>          Components: examples
>            Reporter: Attila Doroszlai
>            Assignee: Attila Doroszlai
>            Priority: Minor
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> Numbers are allowed in variable names, but such variables cannot be used in expressions:
> {noformat}
> $ client.sh arithmetic assign --name v1 --value 1
> $ client.sh arithmetic assign --name v2 --value 2
> $ client.sh arithmetic assign --name v3 --value "v1+v2"
> ...
> Exception in thread "main" java.lang.IllegalArgumentException: Invalid expression v1 Try something like: 'a+b' or '2'
> 	at org.apache.ratis.examples.arithmetic.cli.Assign.createExpression(Assign.java:73)
> 	at org.apache.ratis.examples.arithmetic.cli.Assign.createBinaryExpression(Assign.java:87)
> 	at org.apache.ratis.examples.arithmetic.cli.Assign.createExpression(Assign.java:69)
> 	at org.apache.ratis.examples.arithmetic.cli.Assign.operation(Assign.java:53)
> 	at org.apache.ratis.examples.arithmetic.cli.Client.run(Client.java:51)
> 	at org.apache.ratis.examples.common.Runner.main(Runner.java:67)
> {noformat}
> Similarly, values like {{0}} and {{0.1}} cannot be used in expressions:
> {noformat}
> $ client.sh arithmetic assign --name b --value '0.1+1'
> ... IllegalArgumentException: Invalid expression 0.1+1 Try something like: 'a+b' or '2'
> $ client.sh arithmetic assign --name b --value '0+1
> ... 'IllegalArgumentException: Invalid expression 0+1 Try something like: 'a+b' or '2'
> {noformat}
> Also, negative values result in exception:
> {noformat}
> $ client.sh arithmetic assign --name a --value '-5'
> Exception in thread "main" java.lang.NumberFormatException: empty String
> 	at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1842)
> 	at sun.misc.FloatingDecimal.parseDouble(FloatingDecimal.java:110)
> 	at java.lang.Double.parseDouble(Double.java:538)
> 	at java.lang.Double.valueOf(Double.java:502)
> 	at org.apache.ratis.examples.arithmetic.cli.Assign.createExpression(Assign.java:61)
> 	at org.apache.ratis.examples.arithmetic.cli.Assign.createBinaryExpression(Assign.java:87)
> 	at org.apache.ratis.examples.arithmetic.cli.Assign.createExpression(Assign.java:69)
> 	at org.apache.ratis.examples.arithmetic.cli.Assign.operation(Assign.java:53)
> 	at org.apache.ratis.examples.arithmetic.cli.Client.run(Client.java:51)
> 	at org.apache.ratis.examples.common.Runner.main(Runner.java:67)
> {noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)