[
https://issues.apache.org/jira/browse/PARQUET-2357?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Gang Wu resolved PARQUET-2357.
------------------------------
Assignee: Feng Jiajie
Resolution: Fixed
> Modest refactor of CapacityByteArrayOutputStream
> ------------------------------------------------
>
> Key: PARQUET-2357
> URL: https://issues.apache.org/jira/browse/PARQUET-2357
> Project: Parquet
> Issue Type: Improvement
> Components: parquet-mr
> Reporter: Feng Jiajie
> Assignee: Feng Jiajie
> Priority: Minor
> Fix For: 1.14.0
>
>
> Optimization for the CapacityByteArrayOutputStream class:
> # The functionality of {{currentSlabIndex}} is the same as
> {{{}currentSlab.position(){}}}, so there is no need to maintain the
> {{currentSlabIndex}} variable.
> # When writing an array of length equal to the remaining capacity of the
> buffer, there is no need to expand to a new buffer.
> # If the {{addSlab}} operation has already implemented safeguards using
> {{Math.addExact}} to prevent overflow of {{bytesAllocated}} and
> {{{}bytesUsed{}}}, it is unnecessary to perform additional checks during the
> {{write}} operation.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)