You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by GitBox <gi...@apache.org> on 2022/04/03 22:42:59 UTC
[GitHub] [arrow] andersonm-ibm opened a new pull request, #12778: [ARROW-14114] Fix multi-threaded read of PME files
andersonm-ibm opened a new pull request, #12778:
URL: https://github.com/apache/arrow/pull/12778
Change AesDecryptor to be per Decryptor, instead of shared.
This solves the problem of reading with PME using multiple threads.
Was discovered when exposing high-level PME in PyArrow.
Co-authored-by: Gidon Gershinsky <gg...@apple.com>
CC @thamht4190 @pitrou @revit13
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] github-actions[bot] commented on pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
github-actions[bot] commented on PR #12778:
URL: https://github.com/apache/arrow/pull/12778#issuecomment-1117053728
Revision: fa7944729ff97f8261ae8bb44a7cfcf28c1c8c40
Submitted crossbow builds: [ursacomputing/crossbow @ actions-2007](https://github.com/ursacomputing/crossbow/branches/all?query=actions-2007)
|Task|Status|
|----|------|
|test-build-cpp-fuzz|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-build-cpp-fuzz)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-build-cpp-fuzz)|
|test-conda-cpp|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-cpp)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-cpp)|
|test-conda-cpp-valgrind|[![Azure](https://dev.azure.com/ursacomputing/crossbow/_apis/build/status/ursacomputing.crossbow?branchName=actions-2007-azure-test-conda-cpp-valgrind)](https://dev.azure.com/ursacomputing/crossbow/_build/latest?definitionId=1&branchName=actions-2007-azure-test-conda-cpp-valgrind)|
|test-conda-python-3.10|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.10)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.10)|
|test-conda-python-3.7|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.7)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.7)|
|test-conda-python-3.7-hdfs-2.9.2|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.7-hdfs-2.9.2)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.7-hdfs-2.9.2)|
|test-conda-python-3.7-hdfs-3.2.1|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.7-hdfs-3.2.1)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.7-hdfs-3.2.1)|
|test-conda-python-3.7-kartothek-latest|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.7-kartothek-latest)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.7-kartothek-latest)|
|test-conda-python-3.7-kartothek-master|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.7-kartothek-master)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.7-kartothek-master)|
|test-conda-python-3.7-pandas-0.24|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.7-pandas-0.24)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.7-pandas-0.24)|
|test-conda-python-3.7-pandas-latest|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.7-pandas-latest)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.7-pandas-latest)|
|test-conda-python-3.7-spark-v3.1.2|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.7-spark-v3.1.2)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.7-spark-v3.1.2)|
|test-conda-python-3.7-turbodbc-latest|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.7-turbodbc-latest)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.7-turbodbc-latest)|
|test-conda-python-3.7-turbodbc-master|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.7-turbodbc-master)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.7-turbodbc-master)|
|test-conda-python-3.8|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.8)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.8)|
|test-conda-python-3.8-hypothesis|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.8-hypothesis)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.8-hypothesis)|
|test-conda-python-3.8-pandas-latest|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.8-pandas-latest)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.8-pandas-latest)|
|test-conda-python-3.8-pandas-nightly|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.8-pandas-nightly)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.8-pandas-nightly)|
|test-conda-python-3.8-spark-v3.2.0|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.8-spark-v3.2.0)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.8-spark-v3.2.0)|
|test-conda-python-3.9|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.9)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.9)|
|test-conda-python-3.9-dask-latest|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.9-dask-latest)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.9-dask-latest)|
|test-conda-python-3.9-dask-master|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.9-dask-master)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.9-dask-master)|
|test-conda-python-3.9-pandas-master|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.9-pandas-master)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.9-pandas-master)|
|test-conda-python-3.9-spark-master|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-conda-python-3.9-spark-master)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-conda-python-3.9-spark-master)|
|test-debian-10-cpp-amd64|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-debian-10-cpp-amd64)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-debian-10-cpp-amd64)|
|test-debian-10-cpp-i386|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-debian-10-cpp-i386)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-debian-10-cpp-i386)|
|test-debian-11-cpp-amd64|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-debian-11-cpp-amd64)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-debian-11-cpp-amd64)|
|test-debian-11-cpp-i386|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-debian-11-cpp-i386)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-debian-11-cpp-i386)|
|test-debian-11-python-3|[![Azure](https://dev.azure.com/ursacomputing/crossbow/_apis/build/status/ursacomputing.crossbow?branchName=actions-2007-azure-test-debian-11-python-3)](https://dev.azure.com/ursacomputing/crossbow/_build/latest?definitionId=1&branchName=actions-2007-azure-test-debian-11-python-3)|
|test-fedora-35-cpp|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-fedora-35-cpp)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-fedora-35-cpp)|
|test-fedora-35-python-3|[![Azure](https://dev.azure.com/ursacomputing/crossbow/_apis/build/status/ursacomputing.crossbow?branchName=actions-2007-azure-test-fedora-35-python-3)](https://dev.azure.com/ursacomputing/crossbow/_build/latest?definitionId=1&branchName=actions-2007-azure-test-fedora-35-python-3)|
|test-ubuntu-18.04-cpp|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-ubuntu-18.04-cpp)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-ubuntu-18.04-cpp)|
|test-ubuntu-18.04-cpp-release|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-ubuntu-18.04-cpp-release)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-ubuntu-18.04-cpp-release)|
|test-ubuntu-18.04-cpp-static|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-ubuntu-18.04-cpp-static)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-ubuntu-18.04-cpp-static)|
|test-ubuntu-20.04-cpp|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-ubuntu-20.04-cpp)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-ubuntu-20.04-cpp)|
|test-ubuntu-20.04-cpp-14|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-ubuntu-20.04-cpp-14)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-ubuntu-20.04-cpp-14)|
|test-ubuntu-20.04-cpp-17|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-ubuntu-20.04-cpp-17)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-ubuntu-20.04-cpp-17)|
|test-ubuntu-20.04-cpp-bundled|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-ubuntu-20.04-cpp-bundled)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-ubuntu-20.04-cpp-bundled)|
|test-ubuntu-20.04-cpp-thread-sanitizer|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-ubuntu-20.04-cpp-thread-sanitizer)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-ubuntu-20.04-cpp-thread-sanitizer)|
|test-ubuntu-20.04-python-3|[![Azure](https://dev.azure.com/ursacomputing/crossbow/_apis/build/status/ursacomputing.crossbow?branchName=actions-2007-azure-test-ubuntu-20.04-python-3)](https://dev.azure.com/ursacomputing/crossbow/_build/latest?definitionId=1&branchName=actions-2007-azure-test-ubuntu-20.04-python-3)|
|test-ubuntu-21.04-cpp|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2007-github-test-ubuntu-21.04-cpp)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2007-github-test-ubuntu-21.04-cpp)|
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] pitrou commented on pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
pitrou commented on PR #12778:
URL: https://github.com/apache/arrow/pull/12778#issuecomment-1117094427
@andersonm-ibm Can you also rebase on git master?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] pitrou commented on a diff in pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
pitrou commented on code in PR #12778:
URL: https://github.com/apache/arrow/pull/12778#discussion_r850475720
##########
cpp/src/parquet/encryption/internal_file_decryptor.h:
##########
@@ -97,12 +97,7 @@ class InternalFileDecryptor {
std::shared_ptr<Decryptor> footer_data_decryptor_;
ParquetCipher::type algorithm_;
std::string footer_key_metadata_;
- std::vector<encryption::AesDecryptor*> all_decryptors_;
-
- /// Key must be 16, 24 or 32 bytes in length. Thus there could be up to three
- // types of meta_decryptors and data_decryptors.
- std::unique_ptr<encryption::AesDecryptor> meta_decryptor_[3];
- std::unique_ptr<encryption::AesDecryptor> data_decryptor_[3];
+ std::vector<std::weak_ptr<encryption::AesDecryptor>> all_decryptors_;
Review Comment:
Can you add a comment explaining the purpose of this attribute?
##########
cpp/src/parquet/encryption/encryption_internal.h:
##########
@@ -88,8 +88,9 @@ class AesDecryptor {
explicit AesDecryptor(ParquetCipher::type alg_id, int key_len, bool metadata,
bool contains_length = true);
- static AesDecryptor* Make(ParquetCipher::type alg_id, int key_len, bool metadata,
- std::vector<AesDecryptor*>* all_decryptors);
+ static std::shared_ptr<AesDecryptor> Make(
Review Comment:
Can you add a docstring here, especially explaining the use of `all_decryptors`?
##########
cpp/src/parquet/encryption/internal_file_decryptor.cc:
##########
@@ -134,8 +136,11 @@ std::shared_ptr<Decryptor> InternalFileDecryptor::GetFooterDecryptor(
// Create both data and metadata decryptors to avoid redundant retrieval of key
// from the key_retriever.
- auto aes_metadata_decryptor = GetMetaAesDecryptor(footer_key.size());
- auto aes_data_decryptor = GetDataAesDecryptor(footer_key.size());
+ int key_len = static_cast<int>(footer_key.size());
+ auto aes_metadata_decryptor =
+ encryption::AesDecryptor::Make(algorithm_, key_len, true, &all_decryptors_);
+ auto aes_data_decryptor =
+ encryption::AesDecryptor::Make(algorithm_, key_len, false, &all_decryptors_);
Review Comment:
Make argument meaning more explicit:
```suggestion
auto aes_metadata_decryptor =
encryption::AesDecryptor::Make(algorithm_, key_len, /*metadata=*/true, &all_decryptors_);
auto aes_data_decryptor =
encryption::AesDecryptor::Make(algorithm_, key_len, /*metadata=*/false, &all_decryptors_);
```
##########
cpp/src/parquet/encryption/internal_file_decryptor.cc:
##########
@@ -134,8 +136,11 @@ std::shared_ptr<Decryptor> InternalFileDecryptor::GetFooterDecryptor(
// Create both data and metadata decryptors to avoid redundant retrieval of key
// from the key_retriever.
- auto aes_metadata_decryptor = GetMetaAesDecryptor(footer_key.size());
- auto aes_data_decryptor = GetDataAesDecryptor(footer_key.size());
+ int key_len = static_cast<int>(footer_key.size());
+ auto aes_metadata_decryptor =
+ encryption::AesDecryptor::Make(algorithm_, key_len, true, &all_decryptors_);
+ auto aes_data_decryptor =
+ encryption::AesDecryptor::Make(algorithm_, key_len, false, &all_decryptors_);
Review Comment:
(you'll need to reformat, sorry :-))
##########
cpp/src/parquet/encryption/internal_file_decryptor.cc:
##########
@@ -195,8 +200,11 @@ std::shared_ptr<Decryptor> InternalFileDecryptor::GetColumnDecryptor(
// Create both data and metadata decryptors to avoid redundant retrieval of key
// using the key_retriever.
- auto aes_metadata_decryptor = GetMetaAesDecryptor(column_key.size());
- auto aes_data_decryptor = GetDataAesDecryptor(column_key.size());
+ int key_len = static_cast<int>(column_key.size());
+ auto aes_metadata_decryptor =
+ encryption::AesDecryptor::Make(algorithm_, key_len, true, &all_decryptors_);
Review Comment:
Same here.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] github-actions[bot] commented on pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
github-actions[bot] commented on PR #12778:
URL: https://github.com/apache/arrow/pull/12778#issuecomment-1117096907
Revision: 59e5071f19b5d773b12cadec85193137be2caa5b
Submitted crossbow builds: [ursacomputing/crossbow @ actions-2009](https://github.com/ursacomputing/crossbow/branches/all?query=actions-2009)
|Task|Status|
|----|------|
|test-build-cpp-fuzz|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-build-cpp-fuzz)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-build-cpp-fuzz)|
|test-conda-cpp|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-cpp)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-cpp)|
|test-conda-cpp-valgrind|[![Azure](https://dev.azure.com/ursacomputing/crossbow/_apis/build/status/ursacomputing.crossbow?branchName=actions-2009-azure-test-conda-cpp-valgrind)](https://dev.azure.com/ursacomputing/crossbow/_build/latest?definitionId=1&branchName=actions-2009-azure-test-conda-cpp-valgrind)|
|test-conda-python-3.10|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.10)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.10)|
|test-conda-python-3.7|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.7)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.7)|
|test-conda-python-3.7-hdfs-2.9.2|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.7-hdfs-2.9.2)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.7-hdfs-2.9.2)|
|test-conda-python-3.7-hdfs-3.2.1|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.7-hdfs-3.2.1)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.7-hdfs-3.2.1)|
|test-conda-python-3.7-kartothek-latest|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.7-kartothek-latest)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.7-kartothek-latest)|
|test-conda-python-3.7-kartothek-master|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.7-kartothek-master)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.7-kartothek-master)|
|test-conda-python-3.7-pandas-0.24|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.7-pandas-0.24)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.7-pandas-0.24)|
|test-conda-python-3.7-pandas-latest|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.7-pandas-latest)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.7-pandas-latest)|
|test-conda-python-3.7-spark-v3.1.2|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.7-spark-v3.1.2)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.7-spark-v3.1.2)|
|test-conda-python-3.8|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.8)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.8)|
|test-conda-python-3.8-hypothesis|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.8-hypothesis)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.8-hypothesis)|
|test-conda-python-3.8-pandas-latest|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.8-pandas-latest)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.8-pandas-latest)|
|test-conda-python-3.8-pandas-nightly|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.8-pandas-nightly)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.8-pandas-nightly)|
|test-conda-python-3.8-spark-v3.2.0|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.8-spark-v3.2.0)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.8-spark-v3.2.0)|
|test-conda-python-3.9|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.9)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.9)|
|test-conda-python-3.9-dask-latest|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.9-dask-latest)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.9-dask-latest)|
|test-conda-python-3.9-dask-master|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.9-dask-master)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.9-dask-master)|
|test-conda-python-3.9-pandas-master|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.9-pandas-master)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.9-pandas-master)|
|test-conda-python-3.9-spark-master|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-conda-python-3.9-spark-master)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-conda-python-3.9-spark-master)|
|test-debian-10-cpp-amd64|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-debian-10-cpp-amd64)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-debian-10-cpp-amd64)|
|test-debian-10-cpp-i386|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-debian-10-cpp-i386)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-debian-10-cpp-i386)|
|test-debian-11-cpp-amd64|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-debian-11-cpp-amd64)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-debian-11-cpp-amd64)|
|test-debian-11-cpp-i386|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-debian-11-cpp-i386)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-debian-11-cpp-i386)|
|test-debian-11-python-3|[![Azure](https://dev.azure.com/ursacomputing/crossbow/_apis/build/status/ursacomputing.crossbow?branchName=actions-2009-azure-test-debian-11-python-3)](https://dev.azure.com/ursacomputing/crossbow/_build/latest?definitionId=1&branchName=actions-2009-azure-test-debian-11-python-3)|
|test-fedora-35-cpp|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-fedora-35-cpp)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-fedora-35-cpp)|
|test-fedora-35-python-3|[![Azure](https://dev.azure.com/ursacomputing/crossbow/_apis/build/status/ursacomputing.crossbow?branchName=actions-2009-azure-test-fedora-35-python-3)](https://dev.azure.com/ursacomputing/crossbow/_build/latest?definitionId=1&branchName=actions-2009-azure-test-fedora-35-python-3)|
|test-ubuntu-18.04-cpp|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-ubuntu-18.04-cpp)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-ubuntu-18.04-cpp)|
|test-ubuntu-18.04-cpp-release|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-ubuntu-18.04-cpp-release)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-ubuntu-18.04-cpp-release)|
|test-ubuntu-18.04-cpp-static|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-ubuntu-18.04-cpp-static)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-ubuntu-18.04-cpp-static)|
|test-ubuntu-20.04-cpp|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-ubuntu-20.04-cpp)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-ubuntu-20.04-cpp)|
|test-ubuntu-20.04-cpp-14|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-ubuntu-20.04-cpp-14)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-ubuntu-20.04-cpp-14)|
|test-ubuntu-20.04-cpp-17|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-ubuntu-20.04-cpp-17)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-ubuntu-20.04-cpp-17)|
|test-ubuntu-20.04-cpp-bundled|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-ubuntu-20.04-cpp-bundled)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-ubuntu-20.04-cpp-bundled)|
|test-ubuntu-20.04-cpp-thread-sanitizer|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-ubuntu-20.04-cpp-thread-sanitizer)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-ubuntu-20.04-cpp-thread-sanitizer)|
|test-ubuntu-20.04-python-3|[![Azure](https://dev.azure.com/ursacomputing/crossbow/_apis/build/status/ursacomputing.crossbow?branchName=actions-2009-azure-test-ubuntu-20.04-python-3)](https://dev.azure.com/ursacomputing/crossbow/_build/latest?definitionId=1&branchName=actions-2009-azure-test-ubuntu-20.04-python-3)|
|test-ubuntu-22.04-cpp|[![Github Actions](https://github.com/ursacomputing/crossbow/workflows/Crossbow/badge.svg?branch=actions-2009-github-test-ubuntu-22.04-cpp)](https://github.com/ursacomputing/crossbow/actions?query=branch:actions-2009-github-test-ubuntu-22.04-cpp)|
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] pitrou commented on a diff in pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
pitrou commented on code in PR #12778:
URL: https://github.com/apache/arrow/pull/12778#discussion_r864567688
##########
cpp/src/parquet/encryption/encryption_internal.h:
##########
@@ -88,8 +88,9 @@ class AesDecryptor {
explicit AesDecryptor(ParquetCipher::type alg_id, int key_len, bool metadata,
bool contains_length = true);
- static AesDecryptor* Make(ParquetCipher::type alg_id, int key_len, bool metadata,
- std::vector<AesDecryptor*>* all_decryptors);
+ static std::shared_ptr<AesDecryptor> Make(
Review Comment:
It seems you forgot to address this comment?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] pitrou commented on pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
pitrou commented on PR #12778:
URL: https://github.com/apache/arrow/pull/12778#issuecomment-1099216439
Can you explain what is being accessed from multiple threads in this context?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] pitrou commented on pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
pitrou commented on PR #12778:
URL: https://github.com/apache/arrow/pull/12778#issuecomment-1117095659
@github-actions crossbow submit -g cpp -g python
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] pitrou commented on a diff in pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
pitrou commented on code in PR #12778:
URL: https://github.com/apache/arrow/pull/12778#discussion_r864574772
##########
cpp/src/parquet/encryption/encryption_internal.h:
##########
@@ -88,8 +88,9 @@ class AesDecryptor {
explicit AesDecryptor(ParquetCipher::type alg_id, int key_len, bool metadata,
bool contains_length = true);
- static AesDecryptor* Make(ParquetCipher::type alg_id, int key_len, bool metadata,
- std::vector<AesDecryptor*>* all_decryptors);
+ static std::shared_ptr<AesDecryptor> Make(
Review Comment:
(also the `metadata` argument deserves describing)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] ursabot commented on pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
ursabot commented on PR #12778:
URL: https://github.com/apache/arrow/pull/12778#issuecomment-1120606660
Benchmark runs are scheduled for baseline = 860ce72cd68a433574fc1ba98fb799e8ce751c2f and contender = 88bccab18a4ab818355209e45862cc52f9cf4a0d. 88bccab18a4ab818355209e45862cc52f9cf4a0d is a master commit associated with this PR. Results will be available as each benchmark for each run completes.
Conbench compare runs links:
[Finished :arrow_down:0.0% :arrow_up:0.0%] [ec2-t3-xlarge-us-east-2](https://conbench.ursa.dev/compare/runs/bbaf3bcad7094e91b24db022b5d4937e...95335223321d4a83af3b9e7e22a5b210/)
[Finished :arrow_down:0.35% :arrow_up:0.08%] [test-mac-arm](https://conbench.ursa.dev/compare/runs/06211c3a4e5642e2aaa196e0a98aaf54...afaffe6e6a154e0c8e6d784569eaaaea/)
[Finished :arrow_down:0.36% :arrow_up:0.0%] [ursa-i9-9960x](https://conbench.ursa.dev/compare/runs/d495a4468f13497aa0606cf69a82e099...86103ad996cd432483ab083823884f99/)
[Finished :arrow_down:0.99% :arrow_up:0.08%] [ursa-thinkcentre-m75q](https://conbench.ursa.dev/compare/runs/c588f3994b11467387d5614923e62edd...7b5dc1544cc14b37b253a3052d29a339/)
Buildkite builds:
[Finished] [`88bccab1` ec2-t3-xlarge-us-east-2](https://buildkite.com/apache-arrow/arrow-bci-benchmark-on-ec2-t3-xlarge-us-east-2/builds/704)
[Finished] [`88bccab1` test-mac-arm](https://buildkite.com/apache-arrow/arrow-bci-benchmark-on-test-mac-arm/builds/701)
[Finished] [`88bccab1` ursa-i9-9960x](https://buildkite.com/apache-arrow/arrow-bci-benchmark-on-ursa-i9-9960x/builds/690)
[Finished] [`88bccab1` ursa-thinkcentre-m75q](https://buildkite.com/apache-arrow/arrow-bci-benchmark-on-ursa-thinkcentre-m75q/builds/706)
[Finished] [`860ce72c` ec2-t3-xlarge-us-east-2](https://buildkite.com/apache-arrow/arrow-bci-benchmark-on-ec2-t3-xlarge-us-east-2/builds/703)
[Finished] [`860ce72c` test-mac-arm](https://buildkite.com/apache-arrow/arrow-bci-benchmark-on-test-mac-arm/builds/700)
[Finished] [`860ce72c` ursa-i9-9960x](https://buildkite.com/apache-arrow/arrow-bci-benchmark-on-ursa-i9-9960x/builds/689)
[Finished] [`860ce72c` ursa-thinkcentre-m75q](https://buildkite.com/apache-arrow/arrow-bci-benchmark-on-ursa-thinkcentre-m75q/builds/705)
Supported benchmarks:
ec2-t3-xlarge-us-east-2: Supported benchmark langs: Python, R. Runs only benchmarks with cloud = True
test-mac-arm: Supported benchmark langs: C++, Python, R
ursa-i9-9960x: Supported benchmark langs: Python, R, JavaScript
ursa-thinkcentre-m75q: Supported benchmark langs: C++, Java
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] pitrou commented on pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
pitrou commented on PR #12778:
URL: https://github.com/apache/arrow/pull/12778#issuecomment-1117052646
@github-actions crossbow submit -g cpp -g python
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] andersonm-ibm commented on a diff in pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
andersonm-ibm commented on code in PR #12778:
URL: https://github.com/apache/arrow/pull/12778#discussion_r865783148
##########
cpp/src/parquet/encryption/encryption_internal.h:
##########
@@ -88,8 +88,9 @@ class AesDecryptor {
explicit AesDecryptor(ParquetCipher::type alg_id, int key_len, bool metadata,
bool contains_length = true);
- static AesDecryptor* Make(ParquetCipher::type alg_id, int key_len, bool metadata,
- std::vector<AesDecryptor*>* all_decryptors);
+ static std::shared_ptr<AesDecryptor> Make(
Review Comment:
Sure, @pitrou , I've added the comment.
Thanks for rebasing.
Please, let me know if I can help with anything else..
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] github-actions[bot] commented on pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
github-actions[bot] commented on PR #12778:
URL: https://github.com/apache/arrow/pull/12778#issuecomment-1086991617
:warning: Ticket **has not been started in JIRA**, please click 'Start Progress'.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] github-actions[bot] commented on pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
github-actions[bot] commented on PR #12778:
URL: https://github.com/apache/arrow/pull/12778#issuecomment-1086991605
https://issues.apache.org/jira/browse/ARROW-14114
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] pitrou closed pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
pitrou closed pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
URL: https://github.com/apache/arrow/pull/12778
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] ursabot commented on pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
ursabot commented on PR #12778:
URL: https://github.com/apache/arrow/pull/12778#issuecomment-1120606712
['Python', 'R'] benchmarks have high level of regressions.
[ursa-i9-9960x](https://conbench.ursa.dev/compare/runs/d495a4468f13497aa0606cf69a82e099...86103ad996cd432483ab083823884f99/)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] github-actions[bot] commented on pull request #12778: [ARROW-14114] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
github-actions[bot] commented on PR #12778:
URL: https://github.com/apache/arrow/pull/12778#issuecomment-1086964583
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
Thanks for opening a pull request!
If this is not a [minor PR](https://github.com/apache/arrow/blob/master/CONTRIBUTING.md#Minor-Fixes). Could you open an issue for this pull request on JIRA? https://issues.apache.org/jira/browse/ARROW
Opening JIRAs ahead of time contributes to the [Openness](http://theapacheway.com/open/#:~:text=Openness%20allows%20new%20users%20the,must%20happen%20in%20the%20open.) of the Apache Arrow project.
Then could you also rename pull request title in the following format?
ARROW-${JIRA_ID}: [${COMPONENT}] ${SUMMARY}
or
MINOR: [${COMPONENT}] ${SUMMARY}
See also:
* [Other pull requests](https://github.com/apache/arrow/pulls/)
* [Contribution Guidelines - How to contribute patches](https://arrow.apache.org/docs/developers/contributing.html#how-to-contribute-patches)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] andersonm-ibm commented on pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
andersonm-ibm commented on PR #12778:
URL: https://github.com/apache/arrow/pull/12778#issuecomment-1105621663
> Can you explain what is being accessed from multiple threads in this context?
`AesDecryptor::AesDecryptorImpl::GcmDecrypt()` and `AesDecryptor::AesDecryptorImpl::CtrDecrypt()` use `ctx_` member of type `EVP_CIPHER_CTX` from OpenSSL, which shouldn't be used from multiple threads concurrently.
So, instead of sharing the same `AesDecryptor` between all `Decryptors`, an `AesDecryptor` will be created per `Decryptor`, which is per column.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow] andersonm-ibm commented on a diff in pull request #12778: ARROW-14114: [C++][Parquet] Fix multi-threaded read of PME files
Posted by GitBox <gi...@apache.org>.
andersonm-ibm commented on code in PR #12778:
URL: https://github.com/apache/arrow/pull/12778#discussion_r864574139
##########
cpp/src/parquet/encryption/encryption_internal.h:
##########
@@ -88,8 +88,9 @@ class AesDecryptor {
explicit AesDecryptor(ParquetCipher::type alg_id, int key_len, bool metadata,
bool contains_length = true);
- static AesDecryptor* Make(ParquetCipher::type alg_id, int key_len, bool metadata,
- std::vector<AesDecryptor*>* all_decryptors);
+ static std::shared_ptr<AesDecryptor> Make(
Review Comment:
Sorry, I thought if would be enough to add the description of the `all_decryptors `member.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org