Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions cpp/src/arrow/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -391,6 +391,9 @@ set(ARROW_SRCS
extension/bool8.cc
extension/json.cc
extension/parquet_variant.cc
extension/variant.cc
extension/variant_builder.cc
extension/variant_shredding.cc
extension/uuid.cc
pretty_print.cc
record_batch.cc
Expand Down
4 changes: 3 additions & 1 deletion cpp/src/arrow/extension/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,9 @@
# specific language governing permissions and limitations
# under the License.

set(CANONICAL_EXTENSION_TESTS bool8_test.cc json_test.cc uuid_test.cc)
set(CANONICAL_EXTENSION_TESTS bool8_test.cc json_test.cc uuid_test.cc
variant_test.cc variant_builder_test.cc
variant_shredding_test.cc)

if(ARROW_JSON)
list(APPEND CANONICAL_EXTENSION_TESTS tensor_extension_array_test.cc opaque_test.cc)
Expand Down
4 changes: 3 additions & 1 deletion cpp/src/arrow/extension/meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
# specific language governing permissions and limitations
# under the License.

canonical_extension_tests = ['bool8_test.cc', 'json_test.cc', 'uuid_test.cc']
canonical_extension_tests = ['bool8_test.cc', 'json_test.cc', 'uuid_test.cc', 'variant_test.cc', 'variant_builder_test.cc', 'variant_shredding_test.cc']

if needs_json
canonical_extension_tests += [
Expand All @@ -40,5 +40,7 @@ install_headers(
'parquet_variant.h',
'uuid.h',
'variable_shape_tensor.h',
'variant.h',
'variant_shredding.h',
],
)
5 changes: 4 additions & 1 deletion cpp/src/arrow/extension/parquet_variant.h
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,10 @@ class ARROW_EXPORT VariantExtensionType : public ExtensionType {
std::shared_ptr<Field> value() const { return value_; }

private:
// TODO GH-45948 added shredded_value
// TODO: Track shredded_value field when integrating with Parquet reader.
// The shredding implementation (variant_shredding.h) operates on raw arrays
// externally; a future PR may extend VariantExtensionType to understand
// shredded storage layouts for seamless Parquet I/O integration.
std::shared_ptr<Field> metadata_;
std::shared_ptr<Field> value_;
};
Expand Down
Loading