storm-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jungtaek Lim (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (STORM-328) Config.java and Utils.get{Int,Long} are not in sync for floating point
Date Wed, 09 Jul 2014 10:16:05 GMT

    [ https://issues.apache.org/jira/browse/STORM-328?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14056063#comment-14056063
] 

Jungtaek Lim commented on STORM-328:
------------------------------------

And we would lose precision when we convert integer or long to float, or long to double by
explicit type-casting.
http://www.informit.com/articles/article.aspx?p=1932926&seqNum=5

Since type-casting is not safe with some situation, I think we should present getInt / getLong
/ getFloat / getDouble (Do we need getShort / getByte?), and let Config more strict.

> Config.java and Utils.get{Int,Long} are not in sync for floating point
> ----------------------------------------------------------------------
>
>                 Key: STORM-328
>                 URL: https://issues.apache.org/jira/browse/STORM-328
>             Project: Apache Storm (Incubating)
>          Issue Type: Bug
>    Affects Versions: 0.9.2-incubating, 0.9.1-incubating, 0.9.0.1
>            Reporter: Robert Joseph Evans
>              Labels: newbie
>
> For most numeric configuration values Config.java has a type of Number listed, but the
values are parsed using Utils.getInt or Utils.getLong, which means if someone gave a floating
point number it would pass the ConfigValidation, but would blow up when it is used.  This
is most critical for values that Nimbus reads, but would be good to have them consistent everywhere.
> We should also check that getInt works properly for numbers that are larger then would
fit in an integer.
> Either we need to update Utils to be more lenient when looking at doubles, or we need
to make Config more strict, which may be difficult with the YAML and JSON parsing that happens,
where ints are often converted into longs.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message