You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Rei Odaira (JIRA)" <ji...@apache.org> on 2016/06/07 18:43:21 UTC

[jira] [Updated] (CASSANDRA-11973) Is MemoryUtil.getShort() supposed to return a sign-extended or non-sign-extended value?

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

Rei Odaira updated CASSANDRA-11973:
-----------------------------------
         Flags: Patch
    Attachment: 11973-2.2.txt

> Is MemoryUtil.getShort() supposed to return a sign-extended or non-sign-extended value?
> ---------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-11973
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-11973
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Rei Odaira
>            Assignee: Rei Odaira
>            Priority: Minor
>             Fix For: 2.2.x, 3.0.x, 3.x
>
>         Attachments: 11973-2.2.txt
>
>
> In org.apache.cassandra.utils.memory.MemoryUtil.getShort(), the returned value of unsafe.getShort(address) is bit-wise-AND'ed with 0xffff, while that of getShortByByte(address) is not. This inconsistency results in different returned values when the short integer is negative. Which is preferred behavior? Looking at NativeClustering and NativeCellTest, it seems like non-sign-extension is assumed.
> By the way, is there any reason MemoryUtil.getShort() and MemoryUtil.getShortByByte() return "int", not "short"?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)