crunch-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ben Roling (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CRUNCH-614) HFileUtils.writeToHFilesForIncrementalLoad slowed dramatically by copying KeyValue byte array
Date Wed, 27 Jul 2016 16:27:20 GMT
Ben Roling created CRUNCH-614:
---------------------------------

             Summary: HFileUtils.writeToHFilesForIncrementalLoad slowed dramatically by copying
KeyValue byte array
                 Key: CRUNCH-614
                 URL: https://issues.apache.org/jira/browse/CRUNCH-614
             Project: Crunch
          Issue Type: Bug
            Reporter: Ben Roling


I raised this issue on the mailing list:
http://mail-archives.apache.org/mod_mbox/crunch-user/201607.mbox/%3CCANBdsh01qaQRCNdQdtqytP%2BWAhT_NVGHyQAdDS8H%2BPPMfi9bkw%40mail.gmail.com%3E

HFileUtils was changed in such a way that it makes a copy of the KeyValue byte array in the
compare() method of the KeyValueComparator.  The change was made with the following commit:

https://github.com/apache/crunch/commit/a959ee6c7fc400d1f455b0742641c54de1dec0bf#diff-bc76ce0b41704c9c4efbfa1aab53588d

The change causes HFileUtils.writeToHFilesForIncrementalLoad to be dramatically slower in
at least some cases.

The code changed from using the KeyValue(byte[], int, int) constructor to using KeyValue.create().
 KeyValue.create() does a byte array copy.  The fix is likely as simple as changing the code
back to using the KeyValue constructor.

I will do some testing an attach a PR for the fix.



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

Mime
View raw message