[ https://issues.apache.org/jira/browse/CAY-1987?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14332143#comment-14332143
]
Andrus Adamchik commented on CAY-1987:
--------------------------------------
[~johnthuss] : We have the M2 tag already and master is open for commits. So feel free to
push this change.
> Widen types before performing in-memory evaluation of qualifiers using j.l.Number subclasses
> --------------------------------------------------------------------------------------------
>
> Key: CAY-1987
> URL: https://issues.apache.org/jira/browse/CAY-1987
> Project: Cayenne
> Issue Type: Improvement
> Components: Core Library
> Affects Versions: 4.0.M2
> Environment: trunk
> Reporter: John Huss
> Priority: Minor
> Attachments: 0001-CAY-1987-Widen-types-before-performing-in-memory-eva.patch
>
>
> There is a difference in the behavior of Expressions evaluated in memory versus by the
database when comparing attributes with a type like java.lang.Short with a literal of type
java.lang.Integer. In memory Short(1) != Integer(1), but they are equal in the database.
Using a less strict comparison in memory would be preferable.
> I figured there would be an open source implementation of this somewhere that calculates
the widest type and compares the two values, but I couldn't find one. I imagine you could
just call number.doubleValue() and compare that, but that seems sketchy.
> If you think this is worth doing I could try writing an implementation.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
|