You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@crunch.apache.org by "Josh Wills (JIRA)" <ji...@apache.org> on 2016/07/30 00:48:20 UTC
[jira] [Resolved] (CRUNCH-614)
HFileUtils.writeToHFilesForIncrementalLoad slowed dramatically by copying
KeyValue byte array
[ https://issues.apache.org/jira/browse/CRUNCH-614?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Josh Wills resolved CRUNCH-614.
-------------------------------
Resolution: Fixed
Fix Version/s: 0.15.0
Pushed to master. Thanks again Ben!
> 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
> Affects Versions: 0.11.0, 0.12.0, 0.13.0, 0.14.0
> Reporter: Ben Roling
> Fix For: 0.15.0
>
> Attachments: CRUNCH-614-1.patch
>
>
> 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)