You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Adrien Grand (JIRA)" <ji...@apache.org> on 2014/06/13 14:50:01 UTC

[jira] [Updated] (LUCENE-5759) Add PackedInts.unsignedBitsRequired

     [ https://issues.apache.org/jira/browse/LUCENE-5759?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Adrien Grand updated LUCENE-5759:
---------------------------------

    Fix Version/s: 4.9

> Add PackedInts.unsignedBitsRequired
> -----------------------------------
>
>                 Key: LUCENE-5759
>                 URL: https://issues.apache.org/jira/browse/LUCENE-5759
>             Project: Lucene - Core
>          Issue Type: Bug
>            Reporter: Adrien Grand
>            Assignee: Adrien Grand
>            Priority: Minor
>             Fix For: 4.9
>
>         Attachments: LUCENE-5759.patch
>
>
> Across the code base, we have lots of:
> {code}
> long minValue, maxValue;
> final long delta = maxValue - minValue;
> final int bitsRequired = delta < 0 64 : Packedints.bitsRequired(delta);
> {code}
> {{Packedints.bitsRequired(delta)}} doesn't work directly in that case since it expects a positive value. And that is important that it does so in order to get an error instead of silently being super wasteful if a negative value is provided.
> Yet in some cases such as the one depicted above, the value should be interpreted as an unsigned long. So I propose to add another {{bitsRequired}} method that would interpret the value as unsigned.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org