This is an automated email from the ASF dual-hosted git repository.
apitrou pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/arrow.git.
from b710f21 ARROW-11976: [C++] Fix sporadic TSAN error with GatingTask
add 5b14d53 ARROW-9318: [C++] Parquet encryption key management
No new revisions were added by this update.
Summary of changes:
cpp/cmake_modules/ThirdpartyToolchain.cmake | 4 +
cpp/src/arrow/CMakeLists.txt | 2 +
cpp/src/arrow/json/chunked_builder.h | 9 +-
cpp/src/arrow/json/chunker.cc | 7 +-
cpp/src/arrow/json/converter.cc | 5 +-
cpp/src/arrow/json/object_parser.cc | 83 ++++
cpp/src/arrow/json/object_parser.h | 49 +++
cpp/src/arrow/json/object_writer.cc | 82 ++++
cpp/src/arrow/json/object_writer.h | 48 ++
cpp/src/arrow/json/parser.cc | 13 +-
cpp/src/arrow/json/reader.cc | 5 +-
cpp/src/arrow/util/concurrent_map.h | 68 +++
cpp/src/arrow/util/string.cc | 14 +
cpp/src/arrow/util/string.h | 4 +
cpp/src/arrow/util/string_test.cc | 38 ++
cpp/src/parquet/CMakeLists.txt | 39 +-
cpp/src/parquet/column_reader.cc | 4 +-
cpp/src/parquet/column_writer.cc | 4 +-
cpp/src/parquet/encryption/CMakeLists.txt | 19 +
cpp/src/parquet/encryption/crypto_factory.cc | 175 ++++++++
cpp/src/parquet/encryption/crypto_factory.h | 135 ++++++
cpp/src/parquet/{ => encryption}/encryption.cc | 8 +-
cpp/src/parquet/{ => encryption}/encryption.h | 6 +-
.../{ => encryption}/encryption_internal.cc | 2 +-
.../parquet/{ => encryption}/encryption_internal.h | 10 +-
.../{ => encryption}/encryption_internal_nossl.cc | 2 +-
.../parquet/encryption/file_key_material_store.h | 31 ++
cpp/src/parquet/encryption/file_key_unwrapper.cc | 114 +++++
cpp/src/parquet/encryption/file_key_unwrapper.h | 66 +++
cpp/src/parquet/encryption/file_key_wrapper.cc | 109 +++++
cpp/src/parquet/encryption/file_key_wrapper.h | 82 ++++
.../{ => encryption}/internal_file_decryptor.cc | 6 +-
.../{ => encryption}/internal_file_decryptor.h | 0
.../{ => encryption}/internal_file_encryptor.cc | 6 +-
.../{ => encryption}/internal_file_encryptor.h | 2 +-
cpp/src/parquet/encryption/key_encryption_key.h | 61 +++
cpp/src/parquet/encryption/key_management_test.cc | 225 ++++++++++
cpp/src/parquet/encryption/key_material.cc | 159 +++++++
cpp/src/parquet/encryption/key_material.h | 131 ++++++
cpp/src/parquet/encryption/key_metadata.cc | 89 ++++
cpp/src/parquet/encryption/key_metadata.h | 94 ++++
cpp/src/parquet/encryption/key_metadata_test.cc | 77 ++++
cpp/src/parquet/encryption/key_toolkit.cc | 52 +++
cpp/src/parquet/encryption/key_toolkit.h | 76 ++++
cpp/src/parquet/encryption/key_toolkit_internal.cc | 80 ++++
cpp/src/parquet/encryption/key_toolkit_internal.h | 58 +++
cpp/src/parquet/encryption/key_wrapping_test.cc | 103 +++++
cpp/src/parquet/encryption/kms_client.cc | 44 ++
cpp/src/parquet/encryption/kms_client.h | 95 ++++
cpp/src/parquet/encryption/kms_client_factory.h | 40 ++
.../parquet/encryption/local_wrap_kms_client.cc | 116 +++++
cpp/src/parquet/encryption/local_wrap_kms_client.h | 96 ++++
.../properties_test.cc} | 7 +-
.../read_configurations_test.cc} | 294 +------------
cpp/src/parquet/encryption/test_encryption_util.cc | 482 +++++++++++++++++++++
cpp/src/parquet/encryption/test_encryption_util.h | 113 +++++
cpp/src/parquet/encryption/test_in_memory_kms.cc | 81 ++++
cpp/src/parquet/encryption/test_in_memory_kms.h | 89 ++++
.../encryption/two_level_cache_with_expiration.h | 159 +++++++
.../two_level_cache_with_expiration_test.cc | 177 ++++++++
.../write_configurations_test.cc} | 175 +-------
cpp/src/parquet/file_reader.cc | 4 +-
cpp/src/parquet/file_writer.cc | 4 +-
cpp/src/parquet/metadata.cc | 4 +-
cpp/src/parquet/properties.h | 2 +-
cpp/src/parquet/test_encryption_util.h | 82 ----
cpp/src/parquet/thrift_internal.h | 4 +-
67 files changed, 3933 insertions(+), 591 deletions(-)
create mode 100644 cpp/src/arrow/json/object_parser.cc
create mode 100644 cpp/src/arrow/json/object_parser.h
create mode 100644 cpp/src/arrow/json/object_writer.cc
create mode 100644 cpp/src/arrow/json/object_writer.h
create mode 100644 cpp/src/arrow/util/concurrent_map.h
create mode 100644 cpp/src/parquet/encryption/CMakeLists.txt
create mode 100644 cpp/src/parquet/encryption/crypto_factory.cc
create mode 100644 cpp/src/parquet/encryption/crypto_factory.h
rename cpp/src/parquet/{ => encryption}/encryption.cc (99%)
rename cpp/src/parquet/{ => encryption}/encryption.h (99%)
rename cpp/src/parquet/{ => encryption}/encryption_internal.cc (99%)
rename cpp/src/parquet/{ => encryption}/encryption_internal.h (99%)
rename cpp/src/parquet/{ => encryption}/encryption_internal_nossl.cc (98%)
create mode 100644 cpp/src/parquet/encryption/file_key_material_store.h
create mode 100644 cpp/src/parquet/encryption/file_key_unwrapper.cc
create mode 100644 cpp/src/parquet/encryption/file_key_unwrapper.h
create mode 100644 cpp/src/parquet/encryption/file_key_wrapper.cc
create mode 100644 cpp/src/parquet/encryption/file_key_wrapper.h
rename cpp/src/parquet/{ => encryption}/internal_file_decryptor.cc (98%)
rename cpp/src/parquet/{ => encryption}/internal_file_decryptor.h (100%)
rename cpp/src/parquet/{ => encryption}/internal_file_encryptor.cc (97%)
rename cpp/src/parquet/{ => encryption}/internal_file_encryptor.h (98%)
create mode 100644 cpp/src/parquet/encryption/key_encryption_key.h
create mode 100644 cpp/src/parquet/encryption/key_management_test.cc
create mode 100644 cpp/src/parquet/encryption/key_material.cc
create mode 100644 cpp/src/parquet/encryption/key_material.h
create mode 100644 cpp/src/parquet/encryption/key_metadata.cc
create mode 100644 cpp/src/parquet/encryption/key_metadata.h
create mode 100644 cpp/src/parquet/encryption/key_metadata_test.cc
create mode 100644 cpp/src/parquet/encryption/key_toolkit.cc
create mode 100644 cpp/src/parquet/encryption/key_toolkit.h
create mode 100644 cpp/src/parquet/encryption/key_toolkit_internal.cc
create mode 100644 cpp/src/parquet/encryption/key_toolkit_internal.h
create mode 100644 cpp/src/parquet/encryption/key_wrapping_test.cc
create mode 100644 cpp/src/parquet/encryption/kms_client.cc
create mode 100644 cpp/src/parquet/encryption/kms_client.h
create mode 100644 cpp/src/parquet/encryption/kms_client_factory.h
create mode 100644 cpp/src/parquet/encryption/local_wrap_kms_client.cc
create mode 100644 cpp/src/parquet/encryption/local_wrap_kms_client.h
rename cpp/src/parquet/{encryption_properties_test.cc =>
encryption/properties_test.cc} (98%)
rename cpp/src/parquet/{encryption_read_configurations_test.cc =>
encryption/read_configurations_test.cc} (50%)
create mode 100644 cpp/src/parquet/encryption/test_encryption_util.cc
create mode 100644 cpp/src/parquet/encryption/test_encryption_util.h
create mode 100644 cpp/src/parquet/encryption/test_in_memory_kms.cc
create mode 100644 cpp/src/parquet/encryption/test_in_memory_kms.h
create mode 100644 cpp/src/parquet/encryption/two_level_cache_with_expiration.h
create mode 100644
cpp/src/parquet/encryption/two_level_cache_with_expiration_test.cc
rename cpp/src/parquet/{encryption_write_configurations_test.cc =>
encryption/write_configurations_test.cc} (58%)
delete mode 100644 cpp/src/parquet/test_encryption_util.h