orc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Fang Zheng (JIRA)" <j...@apache.org>
Subject [jira] [Created] (ORC-456) [C++] Simplify code logic in RleEncoderV2
Date Sat, 05 Jan 2019 03:12:00 GMT
Fang Zheng created ORC-456:

             Summary: [C++] Simplify code logic in RleEncoderV2
                 Key: ORC-456
                 URL: https://issues.apache.org/jira/browse/ORC-456
             Project: ORC
          Issue Type: Improvement
          Components: C++
            Reporter: Fang Zheng

There is suboptimal code in RleEncoderV2::write() function (between lines 132-146). 

When a tailing min repeat run (i.e., 3 identical values) is detected and there is an ongoing
variable run, the code copies the tailing identical values to a buffer named "tailVals", writes
values before these values in literals buffer out, and then copies the 3 values back to the
beginning of literals buffer.

Given that the last 3 values are known to be equal to the current value passed in write()
function, we do not need to copy those values back and forth through the tailVals buffer.

This message was sent by Atlassian JIRA

View raw message