Skip to content
Merged
Show file tree
Hide file tree
Changes from 19 commits
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
80a89aa
test draft
Jun 29, 2026
693c014
Merge branch 'main' into ak/field-extraction-tests
abigalekim Jun 30, 2026
7032897
Merge branch 'main' into ak/field-extraction-tests
abigalekim Jul 1, 2026
d4c5d2d
Merge branch 'main' of github.com:abigalekim/cudf into ak/field-extra…
Jul 7, 2026
e7d4bca
stuff
Jul 7, 2026
614b290
reviews
Jul 7, 2026
f3459e5
Merge branch 'main' into ak/field-extraction-tests
abigalekim Jul 7, 2026
9282a81
Merge branch 'ak/field-extraction-tests' of github.com:abigalekim/cud…
Jul 7, 2026
097347f
addressing reviews
Jul 7, 2026
fc49abe
addressing reviews
Jul 10, 2026
556544b
Merge branch 'main' into ak/field-extraction-tests
Jul 10, 2026
2df4645
Merge branch 'main' into ak/field-extraction-tests
Jul 13, 2026
7413eb2
review
Jul 13, 2026
3bb935f
Merge branch 'ak/field-extraction-tests' of github.com:abigalekim/cud…
Jul 13, 2026
f20ea45
new file
Jul 14, 2026
fd1d435
Merge branch 'main' into ak/field-extraction-tests
Jul 14, 2026
0dd37a4
Update cpp/include/cudf/io/experimental/variant_spec.hpp
abigalekim Jul 14, 2026
ca74bed
Merge branch 'main' into ak/field-extraction-tests
abigalekim Jul 14, 2026
07ca0e8
Merge branch 'main' into ak/field-extraction-tests
abigalekim Jul 14, 2026
40d9673
stuff
Jul 14, 2026
1dae299
merge
Jul 14, 2026
08b4f31
Merge branch 'main' into ak/field-extraction-tests
Jul 14, 2026
42d1f10
coderabbit
Jul 15, 2026
88c66b8
git Merge branch 'ak/field-extraction-tests' of github.com:abigalekim…
Jul 15, 2026
3ff7b05
Update cpp/include/cudf/io/experimental/variant_spec.hpp
abigalekim Jul 15, 2026
39bdf07
Update cpp/include/cudf/io/experimental/variant_spec.hpp
abigalekim Jul 15, 2026
b49dbd9
Merge branch 'main' into ak/field-extraction-tests
abigalekim Jul 15, 2026
469509e
clang format
Jul 15, 2026
743b4c7
hopefully passes CI
Jul 15, 2026
26b5ff6
Merge branch 'main' into ak/field-extraction-tests
Jul 15, 2026
2fe74fa
Merge branch 'main' into ak/field-extraction-tests
Jul 16, 2026
70cf457
Merge branch 'main' into ak/field-extraction-tests
Jul 16, 2026
57321f1
Update cpp/tests/io/experimental/variant_extract_test.cpp
abigalekim Jul 17, 2026
d09b0ad
Update cpp/tests/io/experimental/variant_extract_test.cpp
abigalekim Jul 17, 2026
69ed9d2
Merge branch 'main' into ak/field-extraction-tests
abigalekim Jul 17, 2026
b417378
Merge branch 'main' into ak/field-extraction-tests
abigalekim Jul 20, 2026
7f1ad8d
Merge branch 'main' into ak/field-extraction-tests
abigalekim Jul 20, 2026
c93b024
clang format
Jul 20, 2026
0882f0a
Merge branch 'main' into ak/field-extraction-tests
Jul 20, 2026
10dce74
Merge branch 'main' into ak/field-extraction-tests
Jul 20, 2026
148a04b
Merge branch 'main' into ak/field-extraction-tests
Jul 20, 2026
1370221
Merge branch 'main' into ak/field-extraction-tests
Jul 20, 2026
15c5563
Merge branch 'main' into ak/field-extraction-tests
Jul 21, 2026
526bcdc
Merge branch 'main' into ak/field-extraction-tests
Jul 22, 2026
9c11709
Merge branch 'main' into ak/field-extraction-tests
Jul 22, 2026
c4e865a
Merge branch 'main' into ak/field-extraction-tests
Jul 24, 2026
f0c2ce1
Merge branch 'main' into ak/field-extraction-tests
Jul 24, 2026
01e5942
Merge branch 'main' into ak/field-extraction-tests
Jul 27, 2026
48536d1
Update variant enum references missed in merge from main
vuule Jul 28, 2026
8ed7f3b
Merge branch 'main' into ak/field-extraction-tests
vuule Jul 28, 2026
c6a5180
Merge branch 'main' into ak/field-extraction-tests
Jul 28, 2026
d6daa7e
Merge branch 'main' into ak/field-extraction-tests
Jul 28, 2026
bf553c2
test
Jul 28, 2026
8d19aaf
Merge branch 'ak/field-extraction-tests' of github.com:abigalekim/cud…
Jul 28, 2026
e41f893
reflect float and bool support
Jul 28, 2026
03194b0
Merge branch 'main' into ak/field-extraction-tests
Jul 28, 2026
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
39 changes: 39 additions & 0 deletions cpp/include/cudf/io/experimental/variant_spec.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
/*
* SPDX-FileCopyrightText: Copyright (c) 2026, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
* SPDX-License-Identifier: Apache-2.0
*/

#pragma once

#include <cstdint>

namespace cudf::io::parquet::experimental {

/**
* `@brief` Physical type ID carried in the value_header of a primitive VARIANT value.
*/
enum class variant_primitive_type : uint8_t {
null = 0,
boolean_true = 1,
boolean_false = 2,
int8 = 3,
int16 = 4,
int32 = 5,
int64 = 6,
float64 = 7,
decimal4 = 8,
decimal8 = 9,
decimal16 = 10,
date = 11,
timestamp_micros = 12,
timestamp_ntz_micros = 13,
float32 = 14,
binary = 15,
long_string = 16,
time_ntz_micros = 17,
timestamp_nanos = 18,
timestamp_ntz_nanos = 19,
uuid = 20,
};
Comment thread
abigalekim marked this conversation as resolved.

} // namespace cudf::io::parquet::experimental
25 changes: 2 additions & 23 deletions cpp/src/io/parquet/experimental/variant_extract.cu
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
#include <cudf/detail/utilities/grid_1d.cuh>
#include <cudf/detail/utilities/vector_factories.hpp>
#include <cudf/io/experimental/variant.hpp>
#include <cudf/io/experimental/variant_spec.hpp>
#include <cudf/lists/lists_column_device_view.cuh>
#include <cudf/lists/lists_column_view.hpp>
#include <cudf/null_mask.hpp>
Expand Down Expand Up @@ -57,29 +58,7 @@ constexpr size_type variant_header_bytes = 1;
enum class basic_type : uint8_t { primitive = 0, short_string = 1, object = 2, array = 3 };
Comment thread
abigalekim marked this conversation as resolved.
Outdated

// For a primitive value, the value_header is the physical type id of the payload.
enum class primitive_type : uint8_t {
null = 0,
boolean_true = 1,
boolean_false = 2,
int8 = 3,
int16 = 4,
int32 = 5,
int64 = 6,
float64 = 7,
decimal4 = 8,
decimal8 = 9,
decimal16 = 10,
date = 11,
timestamp_micros = 12,
timestamp_ntz_micros = 13,
float32 = 14,
binary = 15,
long_string = 16,
time_ntz_micros = 17,
timestamp_nanos = 18,
timestamp_ntz_nanos = 19,
uuid = 20,
};
using primitive_type = variant_primitive_type;

__device__ cuda::std::optional<uint64_t> read_uint64(device_span<uint8_t const> data,
size_type pos,
Expand Down
Loading
Loading