You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@parquet.apache.org by "Wes McKinney (Jira)" <ji...@apache.org> on 2019/12/04 17:41:00 UTC
[jira] [Resolved] (PARQUET-1702) [C++] Make BufferedRowGroupWriter
compatible with parquet encryption
[ https://issues.apache.org/jira/browse/PARQUET-1702?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Wes McKinney resolved PARQUET-1702.
-----------------------------------
Fix Version/s: cpp-1.6.0
Resolution: Fixed
Issue resolved by pull request 5903
[https://github.com/apache/arrow/pull/5903]
> [C++] Make BufferedRowGroupWriter compatible with parquet encryption
> --------------------------------------------------------------------
>
> Key: PARQUET-1702
> URL: https://issues.apache.org/jira/browse/PARQUET-1702
> Project: Parquet
> Issue Type: Bug
> Components: parquet-cpp
> Affects Versions: cpp-1.6.0
> Reporter: Or Ozeri
> Assignee: Or Ozeri
> Priority: Major
> Labels: pull-request-available
> Fix For: cpp-1.6.0
>
> Time Spent: 50m
> Remaining Estimate: 0h
>
> The newly added parquet encryption feature currently works only with SerializedRowGroupWriter.
> There are several issues preventing the use of BufferedRowGroupWriter with encryption enabled:
> 1. Meta encryptor not passed on to ColumnChunkMetaDataBuilder::Finish. This can trigger a null-pointer dereference (reported as segmentation fault).
> 2. UpdateEncryption not called on Close, resulting in an incorrect AAD string when encrypting the column chunk metadata.
> 3. The column ordinal passed on to PageWriter::Open is always zero, resulting in a wrong AAD string when encrypting the columns data (except for the first column).
> 4. When decrypting a column chunk with no dictionary pages, PARQUET-1706 confuses the decryptor to think it is decrypting a dictionary page, which again causes a wrong AAD string to be used when decrypting.
> We propose a patch (few dozen lines) to fix the above issues.
> We also extend the current parquet-encryption-test unit test, which tests SerializedRowGroupWriter, to test also with BufferedRowGroupWriter.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)