You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@directory.apache.org by "Emmanuel Lecharny (JIRA)" <ji...@apache.org> on 2009/01/05 23:47:44 UTC

[jira] Commented: (DIRSERVER-1296) integer attribute types are not compared correctly

    [ https://issues.apache.org/jira/browse/DIRSERVER-1296?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12660973#action_12660973 ] 

Emmanuel Lecharny commented on DIRSERVER-1296:
----------------------------------------------

Sadly, the test is not demonstrating the bug : The gidNumber AttributeType does not contains a integerOrderingMatch ORDERING, thus using a filter like (gidNumber<=42) is simply not using an integer comparator, but the default String comparator.

You should define your own AttributeType, containing the ORDERING parameter, and run another test.

> integer attribute types are not compared correctly
> --------------------------------------------------
>
>                 Key: DIRSERVER-1296
>                 URL: https://issues.apache.org/jira/browse/DIRSERVER-1296
>             Project: Directory ApacheDS
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 1.5.4
>            Reporter: Lorenz Breu
>             Fix For: 1.5.5
>
>         Attachments: ComparableComparator.java, SearchIT.java
>
>
> When searching for entries that have attributes with the INTEGER syntax, the values are compared lexicographically, not numerically. This happens even if the ordering and equality types are explicitly set to their integer versions when injecting the attribute types into ADS.
> Example:
> dn: cn = foo, dc = example
> cn: foo
> integerAttribute: 435
> now a search using "(integerAttribute<=500)" will correctly return the entry....
> but a search using "(integerAttribute<=44)" will ALSO return the entry, which it clearly should not.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.