Incorrect caching type converter misses for NaN
-----------------------------------------------

                 Key: CAMEL-4959
                 URL: https://issues.apache.org/jira/browse/CAMEL-4959
             Project: Camel
          Issue Type: Bug
          Components: camel-core
    Affects Versions: 2.8.3
            Reporter: Andrey Utkin


When converting Double or Float with value NaN, 
org.apache.camel.converter.ObjectConverter returns "null". But 
org.apache.camel.impl.converter.BaseTypeConverterRegistry.doConvertTo(Class, 
Exchange, Object) interpret this "null" as "suitable conversion not found" and 
cache misses. This lead to completely forgetting of conversion for given types.
For example, when conversing Double to Long, all works until Double is NaN. 
After that, conversion for "Double-to-Long" marked as misses. And  camel stop 
do any conversion for Double-to-Long until restart.

Possible solution is to modify ObjectConverter`s methods to return "Void.TYPE" 
instead of "null" for NaN.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to