hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jinghui Wang (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-10843) TestGridmixRecord unit tests failure on PowerPC
Date Wed, 13 Aug 2014 00:00:17 GMT

    [ https://issues.apache.org/jira/browse/HADOOP-10843?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14094920#comment-14094920
] 

Jinghui Wang commented on HADOOP-10843:
---------------------------------------

Hi Colin, 

Thanks for the suggestion. I have attached a new patch. Yes, using Math.signum is much clearer.
Only thing is that had to cast floats to ints (precision should not cause problems though)
since assertEquals(float a, float b) was deprecated and causing run time errors. 

> TestGridmixRecord unit tests failure on PowerPC
> -----------------------------------------------
>
>                 Key: HADOOP-10843
>                 URL: https://issues.apache.org/jira/browse/HADOOP-10843
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: test, tools
>    Affects Versions: 2.2.0, 2.3.0, 2.4.0, 2.4.1
>            Reporter: Jinghui Wang
>            Assignee: Jinghui Wang
>         Attachments: HADOOP-10843.1.patch, HADOOP-10843.2.patch
>
>
> In TestGridmixRecord#binSortTest, the test expects the comparison result of WritableComparator.compareBytes,
which uses UnsafeComparer, to be the integer difference rather than the documented "@return
0 if equal, < 0 if left is less than right, etc.". 
> TestGridmixRecord#binSortTest code snippet
> {code}
>       final int chk = WritableComparator.compareBytes(
>           out1.getData(), 0, out1.getLength(),
>           out2.getData(), 0, out2.getLength());
>       assertEquals(chk, x.compareTo(y));
>       assertEquals(chk, cmp.compare(
>             out1.getData(), 0, out1.getLength(),
>             out2.getData(), 0, out2.getLength()));
> {code}
> The code snippet below shows the Unsafe comparator behavior for non-little-endian machines.

> {code}
> 	if (!littleEndian) {
> 	  return lessThanUnsigned(lw, rw) ? -1 : 1;
> 	}
> {code}



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

Mime
View raw message