You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Omar Al-Safi (Jira)" <ji...@apache.org> on 2020/05/29 16:05:00 UTC
[jira] [Commented] (CAMEL-15137) Duration converter does not parse
the seconds fraction correctly
[ https://issues.apache.org/jira/browse/CAMEL-15137?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17119734#comment-17119734 ]
Omar Al-Safi commented on CAMEL-15137:
--------------------------------------
[~gnodet] [~davsclaus] this is basically used for the extended string seconds introduced in CAMEL-14878, however wouldn't just make sense to parse the text directly in this format, e.g: {{Duration.parse("PT0.1s")}} under the {{DurationConverter}} instead of {{TimeUtils.toMilliSeconds()}}, I felt the logic there was pretty complex to comprehend. I wanted to change it but wasn't sure if it will break other stuff. Ideas?
> Duration converter does not parse the seconds fraction correctly
> ----------------------------------------------------------------
>
> Key: CAMEL-15137
> URL: https://issues.apache.org/jira/browse/CAMEL-15137
> Project: Camel
> Issue Type: Bug
> Components: came-core
> Reporter: Omar Al-Safi
> Priority: Major
> Fix For: 3.4.0
>
>
> In the [DurationConverter|https://github.com/apache/camel/blob/master/core/camel-base/src/main/java/org/apache/camel/converter/DurationConverter.java], there are some edge cases are not handled correctly when fractions being used, e.g: {{DurationConverter.toDuration("5s").toMillis()}} will give the correct value of {{5000}} meanwhile {{DurationConverter.toDuration("5.5s").toMillis()}} will give {{5005}} which is wrong. Here is list of some edge cases:
> * {{DurationConverter.toDuration("5.5s").toMillis()}} -> 5001
> * {{DurationConverter.toDuration("0.01s").toMillis()}} -> 1
> * {{DurationConverter.toDuration("0.1").toMillis()}} -> 1
> * {{DurationConverter.toDuration("0.5s").toMillis()}} -> 5
--
This message was sent by Atlassian Jira
(v8.3.4#803005)