You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "David Mollitor (Jira)" <ji...@apache.org> on 2020/06/02 13:43:00 UTC

[jira] [Created] (HIVE-23592) BuddyAllocator "makeIntPair" is Not Correct

David Mollitor created HIVE-23592:
-------------------------------------

             Summary: BuddyAllocator "makeIntPair" is Not Correct
                 Key: HIVE-23592
                 URL: https://issues.apache.org/jira/browse/HIVE-23592
             Project: Hive
          Issue Type: Bug
          Components: llap
    Affects Versions: 3.2.0
            Reporter: David Mollitor
            Assignee: David Mollitor


{code:java|title=BuddyAllocator.java}
  // Utility methods used to store pairs of ints as long.
  private static long makeIntPair(int first, int second) {
    return ((long)first) << 32 | second;
  }
  private static int getFirstInt(long result) {
    return (int) (result >>> 32);
  }
  private static int getSecondInt(long result) {
    return (int) (result & ((1L << 32) - 1));
  }
{code}
{code:java}
    long result = LLAP.makeIntPair(Integer.MIN_VALUE, Integer.MIN_VALUE);
    if (LLAP.getFirstInt(result) != Integer.MIN_VALUE) {
       throw new Exception();
    }
    if (LLAP.getSecondInt(result) != Integer.MIN_VALUE) {
      throw new Exception();
   }
/*
 * Exception in thread "main" java.lang.Exception
 * 	at org.test.TestMe.main(TestMe.java:19)
 */
{code}
[https://github.com/apache/hive/blob/4b670877c280b37c5776046f66d766079489b2a8/llap-server/src/java/org/apache/hadoop/hive/llap/cache/BuddyAllocator.java#L1677]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)