Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
380 commits
Select commit Hold shift + click to select a range
2c661fc
feat(nimble): Sync Nimble from fbcode after the move into Velox (#18614)
kgpai Aug 21, 2026
417d227
feat(nimble): Merge Writer and Deserializer with fbcode (#18625)
kgpai Aug 21, 2026
15d719e
feat(torchwave): Common-subexpression elimination (#18623)
oerling Aug 22, 2026
52bb657
fix(nimble): Drop read-only PFOR from dispatch fuzzer test
kgpai Aug 22, 2026
6ced766
fix(kll): Reject unsafe sketch sizes
amitkdutta Aug 22, 2026
eb9af27
feat(nimble): Add shared dictionary catalog schema (#18620)
xiaoxmeng Aug 22, 2026
4d16851
feat(nimble): Add shared dictionary catalog reader
xiaoxmeng Aug 22, 2026
ae3f7b1
refactor(nimble): Rename file features to properties (#18616)
xiaoxmeng Aug 23, 2026
b7199fb
feat(nimble): Add shared dictionary config (#18636)
xiaoxmeng Aug 23, 2026
6a99eaa
feat(nimble): Add external dictionary build tool and library (#18634)
xiaoxmeng Aug 23, 2026
787f964
fix(nimble): Build writer reclaimer in OSS
xiaoxmeng Aug 23, 2026
683854b
misc(nimble): Make DeltaBlock reject unsorted input as incompatible (…
duxiao1212 Aug 23, 2026
29357c4
fix(tests): Keep an explicit ROWS window frame (#18639)
mbasmanova Aug 23, 2026
e4811a2
fix(cuDF): Avoid copying single cuDF concat batches in CudfBatchConcat
devavret Aug 23, 2026
33a594c
fix(hive): Test split filters on all partition keys and constants
Joe-Abraham Aug 23, 2026
fc329bf
feat(nimble): Add shared dictionary encoding and writer (#18640)
kgpai Aug 23, 2026
a9c90e0
fix(function): Fix LIKE crash on truncated UTF-8 patterns (#18622) (#…
Yuhta Aug 23, 2026
80fc30b
fix(nimble): Make the shared dictionary export build and pass checks
kgpai Aug 24, 2026
7bdf242
docs: Document VELOX_ENABLE_BACKWARD_COMPATIBILITY
mbasmanova Aug 24, 2026
704b703
fix(nimble): Keep nulls in dictionary reads without AVX2 (#18621)
Yuhta Aug 24, 2026
adb4f5c
test: Enable dynamic filter pushdown for long decimal join keys
rui-mo Aug 24, 2026
e1e73a0
fix(torchwave): Three unrelated crash and corruption bugs
oerling Aug 24, 2026
9005b49
feat(nimble): Verify writer metadata in fuzzers (#18545)
kewang1024 Aug 24, 2026
360af1a
fix(presto-serializer): Deserialize nested OPAQUE columns (#18532)
kunigami Aug 25, 2026
cb8a941
perf(nimble): Reuse encoding slice scratch buffers (#18660)
xiaoxmeng Aug 25, 2026
fbc6742
docs: Add blog "Native Delta Statistics with Velox Task Barriers"
zhztheplayer Aug 25, 2026
dbf7937
refactor: Minor normalize gtest names for dwio
wecharyu Aug 25, 2026
191da88
perf(nimble): Fast-path uncompressed chunk stripping
xiaoxmeng Aug 25, 2026
de9ef92
refactor(nimble): Extract encoding evaluation into common library (#1…
hdikeman Aug 25, 2026
a0ebe26
feat(serializer): Add API to decode multiple row ranges from a single…
hdikeman Aug 25, 2026
47e2960
feat(nimble): Add shared integer dictionary encoding (#18637)
xiaoxmeng Aug 25, 2026
33d01d6
feat(file_format): Add Nimble file dictionary conversion
xiaoxmeng Aug 25, 2026
05b18f2
fix: Support merging HUGEINT value filters
rui-mo Aug 25, 2026
ebc79dc
perf(nimble): Add selected stream location lookup (#18673)
xiaoxmeng Aug 25, 2026
fd75079
fix: Point iceberg Nimble tests at the migrated writer factory header
Yuhta Aug 25, 2026
77597f0
fix(cudf): Fix AzuriteServer.cpp location on Presto builds
lga-zurich Aug 25, 2026
ca9eb03
build: Add build flag for LocalRunnerService (#18413)
peterenescu Aug 25, 2026
b028b44
feat: Support VeloxQueryRunner in Github Expression Fuzzer (#18414)
peterenescu Aug 25, 2026
2b5cbb2
feat(torchwave): Allocation groups for shared lifetimes and fused con…
oerling Aug 25, 2026
3bf3db7
feat(nimble): Make FOR read-only while keeping PFOR writable (#18657)
duxiao1212 Aug 25, 2026
0629586
feat(nimble): Verify column statistics in writer fuzzer (#18666)
kewang1024 Aug 25, 2026
4900660
fix(sparksql): Add high-precision DECIMAL to REAL/DOUBLE cast aligned…
kecookier Aug 25, 2026
6449faf
fix(nimble): Fix null population when abandoning the dictionary (#18628)
HuamengJiang Aug 25, 2026
eb846b0
fix(iceberg): Field id based matching for equality delete columns
nmahadevuni Aug 26, 2026
61e41f0
fix(rpc): Recover the congestion window after an overload backs it of…
zhichenxu-meta Aug 26, 2026
437c80c
feat(nimble): SubIntSplit and Reordering microbenchmark drivers
David-C-L Aug 26, 2026
9a3ac15
feat(nimble): Verify schema roundtrip and stripe group consistency in…
kewang1024 Aug 26, 2026
777dce4
Daily `arc lint --take CLANGFORMAT` (#18696)
meta-codesync[bot] Aug 26, 2026
d142979
fix: Add split-level column mapping mode for file scans
rui-mo Aug 26, 2026
b3afad6
test(nimble): BlockBitPacking encoding does not support empty rows
kevinwilfong Aug 26, 2026
97f32a0
build(ci): Bump pypa/cibuildwheel from 4.0.0 to 4.2.0
dependabot[bot] Aug 26, 2026
d6b8abf
fix: Restore Huffman 12-bit guard, fix NaN stats compare
Yuhta Aug 26, 2026
90167ec
fix(nimble): Reject enableChunkIndex without enableChunking (#18664)
kewang1024 Aug 27, 2026
88f9497
fix: Fix CacheShard::shutdown race and leak
arhimondr Aug 27, 2026
a797ecd
refactor(reader): Move the reader factory out of fb/ (#18677)
HuamengJiang Aug 27, 2026
512d240
perf(parquet): Optimize DeltaBpDecoder skip and decode
iemejia Aug 27, 2026
595a992
fix(nimble): Re-size the merged flat map key buffer when the entry co…
HuamengJiang Aug 27, 2026
195d3e3
refactor(type): Drop Type.h from the simple-function header path so n…
karthikeyann Aug 27, 2026
b7be48a
perf(nimble): Reduce index projector slice overhead (#18708)
xiaoxmeng Aug 27, 2026
3221d03
fix(nimble): Satisfy gersemi and header-ownership pre-commit hooks
karthikeyann Aug 27, 2026
24600ec
perf(nimble): Preallocate index projector slice output buffer (#18712)
xiaoxmeng Aug 27, 2026
c79c183
fix(hdfs): Retry transient read failures in HdfsReadFile with backoff…
beliefer Aug 27, 2026
d1fbb18
feat: Add runtime stat `toIntermediateFastPathCalls` in HashAggregation
zhztheplayer Aug 27, 2026
3c877e6
fix(nimble): Update NullColumnReaderTest to enable runtime filter
rui-mo Aug 27, 2026
8314067
perf(nimble): Answer integral constancy from min/max instead of uniqu…
prashantgolash Aug 27, 2026
d6fd0dd
test(nimble): Exclude Huffman from writer fuzzing
shanhao-203 Aug 28, 2026
611009c
feat(nimble): Add string shared dictionary encoding
xiaoxmeng Aug 28, 2026
7a6fd80
perf: Add all-null fast path to nullable materialization (#18722)
zacw7 Aug 28, 2026
31626dd
fix(wave): Make the kernel cache safe to share between processes (#18…
oerling Aug 28, 2026
91afdd9
Sync facebookincubator/velox main at 31626dd954d6507953168f8563292e3b…
firestarman Aug 28, 2026
2ac7fd4
Merge HighPerfDataAccelerator/velox dev at 28798f62306ed2bf7db4b2161b…
firestarman Aug 28, 2026
78cc0d4
build: Update FBOS to v2026.07.13.00 (#18194) (#18194)
kgpai Aug 28, 2026
fdfc81f
fix: Use in-memory exchange client return type
firestarman Aug 28, 2026
e2fcb05
fix: Avoid const Thrift field references
firestarman Aug 28, 2026
13ac317
fix: Preserve masks in cuDF min-max reductions
firestarman Aug 28, 2026
aa0b8f8
feat: TorchWave whole-graph AOT load/run API (AOTInductor alternative…
oerling Aug 28, 2026
4861a36
feat(nimble fuzzer): Vary random encoding by chunk data (#18729)
kewang1024 Aug 28, 2026
f9f77bd
feat(nimble): Enable null generation in Nimble table evolution fuzzer…
kewang1024 Aug 28, 2026
aa63768
perf(nimble): Optimize boolean stream slicing (#18748)
xiaoxmeng Aug 29, 2026
bf945af
Sync facebookincubator/velox main at aa63768200e990788981168039772a30…
firestarman Aug 30, 2026
e4a8f57
perf(nimble): Optimize BlockBitPacking indexed view reads (#18754)
xiaoxmeng Aug 30, 2026
a504149
fix(nimble): Count shared dictionary alphabet bytes in column stats
HuamengJiang Aug 30, 2026
c5d7182
feat(nimble): Parallelize stream encoding
xiaoxmeng Aug 31, 2026
2696554
fix(nimble): Handle nulls across dictionary chunks
kewang1024 Aug 31, 2026
208883b
refactor(nimble): Rename VeloxReader to BatchReader (#18713)
HuamengJiang Aug 31, 2026
3ea8fd7
refactor(core): Make UnnestNode output names std::optional (#18213)
kKPulla Aug 31, 2026
614c9c7
perf(nimble): Plan and scan only the stripes that carry ranges
tanjialiang Sep 1, 2026
5a98cfe
perf(nimble): Add SliceEncoding for Nimble
tanjialiang Sep 1, 2026
1e14588
fix: Enable bulk reader path on aarch64 via hasSIMD() (#18609)
vandreykiv Sep 1, 2026
5f3e501
fix(abfs): Guard AbfsFileSystemTest::TearDown() against a failed SetUp()
karthikeyann Sep 1, 2026
0223a0c
fix(memory): Reject unsupported page size in MmapAllocator
karthikeyann Sep 1, 2026
59f391c
feat(arrow): Add support for large-strings
wecharyu Sep 1, 2026
a2d4a31
feat(iceberg): Add IcebergTableHandle class
nmahadevuni Sep 1, 2026
bdb8d4e
feat(exec): Add storage parameters to TableWriterBuilder (#18693)
sathishkrishnaraju Sep 1, 2026
dee334c
fix(dwio): Exclude prefetch reads from query thread IO wait
raymondlin1 Sep 1, 2026
2466d20
fix(hyperloglog): Zero extend Murmur3 tail bytes
kevintang2022 Sep 1, 2026
fa38364
fix: Fix naming violations in ScopedArbitrationParticipant
lingbin Sep 1, 2026
bf32b1a
fix(parquet): Handle out-of-range created_by versions
fallintoplace Sep 1, 2026
b522992
fix(parquet): Advance struct reader subtree when skipping filtered rows
wecharyu Sep 1, 2026
b39acf1
refactor(memory): Remove unused TestValue in ArbitrationOperation
lingbin Sep 1, 2026
0544a2d
refactor: Make S3 config keys connector agnostic
PingLiuPing Sep 1, 2026
d066740
Sync facebookincubator/velox main at 0544a2d0df381f18012e9f7a6aa0237b…
firestarman Sep 2, 2026
f593528
Merge HighPerfDataAccelerator/velox dev at bd4b186884341f0e9c3953cc87…
firestarman Sep 2, 2026
0130d61
feat(vector): Add BaseVector::unsafeSetPool for future allocations
MnO2 Sep 2, 2026
6a6f265
fix: Track row size for min_by/max_by with non-numeric accumulators (…
kevinwilfong Sep 2, 2026
a6a7a19
perf(nimble): Slice RLE run ranges structurally instead of re-encoding
tanjialiang Sep 2, 2026
720788b
fix(HashTableCache): Give each entry its own leaf pool (#18788)
adheer-araokar Sep 2, 2026
ad45034
feat(cudf): Add CudfLocalMerge and allow PartitionOutput without Fall…
karthikeyann Sep 2, 2026
484ef82
fix(rpc): Let each backend adapt its concurrency independently (#18559)
zhichenxu-meta Sep 2, 2026
93c627b
build(deps): Bump postcss-selector-parser from 6.1.2 to 6.1.4 in /web…
dependabot[bot] Sep 2, 2026
20de605
feat(sparksql): Add casts between DATE and TIMESTAMP UTC
Mariamalmesfer Sep 2, 2026
198976a
docs(website): Add VeloxCon China banner, update community tiles
alileclerc Sep 2, 2026
6a9ef7e
perf(cuDF): Adds support for using cudf::streaming_groupby
devavret Sep 2, 2026
7987835
fix: Avoid null dereference in Parquet StructColumnReader
rui-mo Sep 2, 2026
231d16a
feat: Add no-op runtime stat writer (#18773)
natashasehgal Sep 2, 2026
07103ee
fix(nimble): Avoid nested parallel decode deadlock (#18796)
xiaoxmeng Sep 3, 2026
a5e2f57
Sync facebookincubator/velox main at 231d16aa63c7dc924085603b02f7284b…
firestarman Sep 3, 2026
e5b5134
feat(exec): Enforce NOT NULL constraints on table writes
Joe-Abraham Sep 3, 2026
594e4d1
fix(cudf): Preserve downstream partition output adapter
firestarman Sep 3, 2026
ec9e0b4
fix(iceberg): Do not read timestamp default values as localtime
nmahadevuni Sep 3, 2026
e3674ce
fix(nimble): Resolve EncodingFactory({}) ambiguity in Fsst test
duanmeng Sep 3, 2026
e17810f
fix(datetime): Stop truncating intervals over 24 days
mbasmanova Sep 3, 2026
a6b9f77
feat: Add Spark-dialect map_from_arrays to Velox (#18630)
emilysun201309 Sep 3, 2026
2886822
feat(core): Allow UnnestNode to skip unused output columns
kKPulla Sep 3, 2026
8e831bc
feat(core): Allow UnnestNode to skip unused output columns (#18214)
kKPulla Sep 3, 2026
e3a0489
build(deps): Bump browserslist from 4.28.2 to 4.28.8 in /website
dependabot[bot] Sep 3, 2026
f23b2a1
fix(rpc): Correct the low-water report and the BATCH AIMD recovery un…
zhichenxu-meta Sep 3, 2026
253b5ea
perf(nimble): Collect string min/max in a single pass (#18760)
prashantgolash Sep 3, 2026
1a17097
fix(exec): Only retain clustered input when no group spans batches (#…
kevinwilfong Sep 3, 2026
d6f3148
fix(parquet): Use unaligned loads in DeltaBpDecoder SIMD path
PingLiuPing Sep 3, 2026
8321718
fix(nimble): Bound parallel decode across reader tree (#18828)
xiaoxmeng Sep 3, 2026
edf4530
fix(nimble): Reject shared dictionary encoding in the index projector
tanjialiang Sep 3, 2026
c40c77c
fix(build): Drop LazyRE2 from parse_duration
mbasmanova Sep 3, 2026
bcf94d0
fix(build): Remove deprecated gMock action wrappers
kagamiori Sep 3, 2026
d7cec91
refactor(parquet): Use velox parquet reader in FileSerializeTest
jkhaliqi Sep 3, 2026
990d1c8
feat(parquet): Add writer.row-group-size config
infvg Sep 3, 2026
def80f9
build(deps): Bump fast-uri from 3.1.5 to 3.1.7 in /website
dependabot[bot] Sep 3, 2026
796c621
fix(rpc): Guard the backend stats read on close(), and split isBlocke…
zhichenxu-meta Sep 3, 2026
9a350e1
Sync facebookincubator/velox main at 796c6214c89a78ef86df29a64d435112…
firestarman Sep 4, 2026
f95611c
Merge HighPerfDataAccelerator/velox dev at cf619d90eca1b83ad31f446b96…
firestarman Sep 4, 2026
dd436f0
feat: Add Spark btrim function
yikf Sep 4, 2026
1cae9c7
feat(writer): Expose nimble writer options as SerDe keys
sathishkrishnaraju Sep 4, 2026
3e9b8f8
feat(exec): Show what a table scan reads in plan text (#18842)
mbasmanova Sep 4, 2026
e527416
refactor(connectors): Add is<T>() and as<T>() downcasts (#18847)
mbasmanova Sep 4, 2026
c10f41b
fix(build): Remove deprecated gMock `Invoke` wrappers
kagamiori Sep 4, 2026
3769b9a
feat(vector): Expose if DecodedVector buffers are borrowed or owned (…
pedroerp Sep 4, 2026
61b7be2
perf(nimble): Slice BlockBitPacking partial blocks structurally inste…
tanjialiang Sep 4, 2026
1b15660
feat(spark): Support toIntermediate in AverageAggregate
zhztheplayer Sep 4, 2026
7427d6a
fix(nimble): Skip stripes that project no streams
tanjialiang Sep 5, 2026
5ecb2c5
feat(torchwave): Read a .pt2's flat inputs so a 1k-row graph can be t…
oerling Sep 5, 2026
646a7a8
feat(torchwave): Standalone Triton port of masked_select_jagged and i…
oerling Sep 5, 2026
afd946b
fix(nimble): Isolate vendored FSST C++ symbols
duanmeng Sep 6, 2026
1f83a40
feat: Fused batch_flip_and_truncate_sparse (#18861)
oerling Sep 6, 2026
b46c174
fix(torchwave): Barrier before an elementwise op reads a leaf this ke…
oerling Sep 6, 2026
dd5d6bb
fix(nimble): Synchronize encoding pool test callback
duanmeng Sep 6, 2026
609c32f
fix(nimble): Harden FSST decoding bounds
duanmeng Sep 6, 2026
a1e56fe
perf(nimble): Vectorize the ALP encode transform and grid search
duanmeng Sep 6, 2026
d13ef1e
feat(torchwave): Per-column decomposition and chain gather folding (#…
oerling Sep 6, 2026
2cb8ace
Sync facebookincubator/velox main at d13ef1e303af6a12cfb770f8144fad49…
firestarman Sep 7, 2026
c5f666d
feat(torchwave): Split a starved step into balanced kernel launches (…
oerling Sep 7, 2026
64c80cf
feat(torchwave): Fill a wide cat's operands in parallel, on either gr…
oerling Sep 7, 2026
7dec01a
feat(nimble): Add Elias-Fano integer encoding (#18875)
xiaoxmeng Sep 7, 2026
1a0ca01
refactor(nimble): Speed up block min-max statistics (#18876)
duxiao1212 Sep 7, 2026
49a9291
feat(nimble): Add BitRangeSplit integer encoding (#18877)
xiaoxmeng Sep 7, 2026
f98703f
fix: Write only the selected rows in NULLIF
mbasmanova Sep 7, 2026
6be4061
fix(build): Stop installing googletest from Homebrew on macOS
mbasmanova Sep 7, 2026
b5d213a
refactor: Share the Presto type display name (#18887)
mbasmanova Sep 7, 2026
ff16498
fix(serializers): Avoid string_view iterator-to-pointer use
lingbin Sep 7, 2026
0b7ea7d
misc: Fix cuDF clang-format checks
firestarman Sep 8, 2026
258a2d1
feat(nimble): Cache grouped data reads (#18893)
xiaoxmeng Sep 8, 2026
512cc73
fix: Respect active rows in sorted aggregation input
mbasmanova Sep 8, 2026
dce6949
feat: Support toIntermediate in SumAggregate
zhztheplayer Sep 8, 2026
78c2548
feat: Add Spark convert_timezone function
Mariamalmesfer Sep 8, 2026
5ffb0a1
feat(nimble): Add FAISS-backed vector search indexes (#18894)
xiaoxmeng Sep 8, 2026
87c7bf1
docs: Document test error assertions, case scoping and ROW short forms
mbasmanova Sep 8, 2026
7e50cf0
feat: Add Spark `make_timestamp_ntz` and `try_make_timestamp_ntz` fun…
Mariamalmesfer Sep 8, 2026
53ac69e
refactor: Remove FRIEND_TEST macro
wecharyu Sep 8, 2026
75735fc
build(ci): Cut macOS runner usage on pull requests
kgpai Sep 8, 2026
34d38e0
fix: Mismatched iterator types in `std::copy` calls
yuxuanchen1997 Sep 8, 2026
05cadcd
fix: Use `data()` instead of iterators where a raw pointer is required
yuxuanchen1997 Sep 8, 2026
1ac96af
feat(ucx-exchange): Bring the UCX exchange transport up to date
dan13bauer Sep 8, 2026
d2457bb
feat(hive): Add physicalFilePath to FileConnectorSplit (#18850)
zzhao0 Sep 8, 2026
b8176e7
feat(hive): Open a split's bytes from readPath()
zzhao0 Sep 8, 2026
aa5d19b
feat(parquet): Allow subfield rename and deletion
rui-mo Sep 8, 2026
c7de935
refactor(nimble): Generalize dictionary index dispatch
kewang1024 Sep 8, 2026
089cbe1
docs(presto): Document FAISS build requirement for real-array distanc…
prakriti31 Sep 8, 2026
5c8134d
build(ci): Add a centos9 image with Debug dependencies
kgpai Sep 8, 2026
15f3c5d
fix(cudf): Support NestedLoopJoin conditions spanning both join sides
patdevinwilson Sep 8, 2026
407e88c
refactor(nimble): Reuse sorted-input statistics (#18896)
duxiao1212 Sep 8, 2026
00ac624
feat(core): Name the receive transport on ExchangeNode and MergeExcha…
dan13bauer Sep 8, 2026
07a264e
feat(nimble): Add integer dictionary-aware filtering gate (#18892)
kewang1024 Sep 8, 2026
fa4eb6c
Sync facebookincubator/velox main at 07a264e6738c3c0209d6de9c6e50d17d…
firestarman Sep 9, 2026
ff7e836
Merge HighPerfDataAccelerator/velox dev at d65fb76ea78565ca89a114ec48…
firestarman Sep 9, 2026
72e229e
feat(nimble): Integrate vector indexes with TabletReader (#18895)
xiaoxmeng Sep 9, 2026
cbfac92
feat(writer): Add nimble.feature.ordering.override SerDe key (#18849)
sathishkrishnaraju Sep 9, 2026
a20d6dd
refactor(nimble): Decouple the writer from FAISS (#18913)
luqun Sep 9, 2026
70f65ee
perf(nimble): Encode the largest streams first when encoding in paral…
prashantgolash Sep 9, 2026
f4150ef
docs(style): Scope "why, not what" to the code
mbasmanova Sep 9, 2026
df0918c
feat: Cache reusable unique-value statistics (#18878)
duxiao1212 Sep 9, 2026
1bdb16d
fix(ucx): import NVTX target for system cuDF builds
firestarman Sep 9, 2026
ebe76c8
docs(nimble): Explain encoded stream slicing
xiaoxmeng Sep 9, 2026
ed109ae
perf(tablet): Avoid per-stream copy in TabletReader::load
kunalspathak Sep 9, 2026
ae5d926
fix(exec): Preserve RowContainer flags in serialized rows
boneanxs Sep 9, 2026
b61dd58
fix(ucx): pass sequence to removed-task callback
firestarman Sep 9, 2026
f80acea
fix(ucx): pass row count in registry tests
firestarman Sep 9, 2026
7c0c8ea
fix(nimble): Decouple the writer from FAISS (#18920)
duxiao1212 Sep 9, 2026
ca21132
fix(khyperloglog): Widen the uii to a long before hashing (#18725)
kevintang2022 Sep 9, 2026
c69d085
fix(ci): Update recent blog posts in README
lingbin Sep 9, 2026
9b425a4
refactor(nimble): Address review comments on shared string dictionary…
HuamengJiang Sep 9, 2026
99ec2f8
fix(cudf): Preserve null semantics in subfield filters
shrshi Sep 9, 2026
13dfa28
refactor(vector): Make `forEachEntry` const in map concat sources (#1…
Magoja Sep 9, 2026
4197bad
test(vector): Add NullsBuilder unit tests (#18810)
Magoja Sep 9, 2026
24558ce
fix(SfmSketch): Debias randomized merge (#18790)
jonhehir Sep 9, 2026
d7c312b
feat: Add Nimble stripe-level column statistics section (#18656)
apurva-meta Sep 10, 2026
b5da06d
refactor(cudf): Share join output layout and extended table views
shrshi Sep 10, 2026
724c021
fix(khyperloglog): Correct varchar and REAL join key hashes (#18726)
kevintang2022 Sep 10, 2026
008e92f
fix(wave): Build against CUDA 13 (#18817)
wenxin0319 Sep 10, 2026
49bb9be
perf: Read preferredOutputBatchBytes once in HashProbe
PingLiuPing Sep 10, 2026
924f095
fix(metaai): Handle null optional LLM inference arguments [velox][bug…
abhinavmuk04 Sep 10, 2026
e4e94a3
feat(functions): Support named rows in simple UDFs (#18934)
mbasmanova Sep 10, 2026
5631430
perf(nimble): Reduce FSST encoding buffer allocations
duanmeng Sep 10, 2026
03ffb25
fix(expression): Rescale a decimal bound to a shared type variable (#…
mbasmanova Sep 10, 2026
6e58dd3
build(ci): Always build gflags and glog in release mode
kgpai Sep 10, 2026
983a617
refactor(spark): Reorganize size registration and document ANSI compl…
philo-he Sep 10, 2026
932f11d
Sync facebookincubator/velox main at 983a617863794706e413245f22e703b7…
firestarman Sep 11, 2026
7480ea9
feat(nimble): Collect user metadata at close via a provider (#18777)
zacw7 Sep 11, 2026
f92f05f
fix(memory): Correct minFreeCapacity shrink config comments
lingbin Sep 11, 2026
57515c4
fix(cudf): use renamed join view helper
firestarman Sep 11, 2026
811fda8
style: Apply clang-format to sync changes
firestarman Sep 11, 2026
0a0871f
fix(iceberg): Fall back to name mapping when field IDs are unavailable
nmahadevuni Sep 11, 2026
cb29d61
feat(cudf): Fold injected column predicates into the filter
mhaseeb123 Sep 11, 2026
4fecb7b
feat(cudf): Let a kept operator be followed by GPU operators
dan13bauer Sep 11, 2026
eaba168
fix(gpu): Add missing includes for CUDA 13 (#18947)
wenxin0319 Sep 11, 2026
60877f2
feat(encoding): Let SliceEncoding shift every value by a constant (#1…
tanjialiang Sep 11, 2026
57376d6
build(ci): Run the fuzzers on the Debug dependency image
kgpai Sep 11, 2026
6178459
build(cudf): Update cudf pin to 26.10
mhaseeb123 Sep 12, 2026
9e4573e
docs(core): Correct ScanBatchEvent::numRows semantics
raymondlin1 Sep 12, 2026
80ab269
fix(wave): Unbreak the CUDA 13.3 and sm_100 builds (#18965)
wenxin0319 Sep 12, 2026
21c2e7e
fix(datetime): Clamp `from_unixtime` to timestamp range
mbasmanova Sep 12, 2026
24ecd0c
feat(encoding): Push down value delta into inner encoding at wrap tim…
tanjialiang Sep 12, 2026
9084390
test(velox): Cover TIMESTAMP in TableEvolutionFuzzer (#18873)
HuamengJiang Sep 12, 2026
d76ab55
feat(exchange): Add file durable exchange backend (#18871)
shrinidhijoshi Sep 13, 2026
563634c
perf(encoding): Apply SliceEncoding value delta to sorted position st…
tanjialiang Sep 13, 2026
cbb16a0
Sync facebookincubator/velox main at 563634c3417b3604f60723f4a6cac230…
firestarman Sep 14, 2026
902184b
fix(ucx): adapt to UCXX builder APIs
firestarman Sep 14, 2026
28a4978
fix(ucx): update stream synchronization API
firestarman Sep 14, 2026
b1c127b
fix(cudf): pass explicit memory resources
firestarman Sep 14, 2026
3607e08
style: Apply clang-format to sync changes
firestarman Sep 15, 2026
4e17cef
fix(cudf): restore partial identity aggregation
firestarman Sep 16, 2026
082b1e7
fix(cudf): include variant for CUDA compilation
firestarman Sep 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5 changes: 3 additions & 2 deletions .claude/CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,8 @@ or lightweight dependencies, use `add_executable` / `add_test`.
## Formatting

```bash
make format # format all changed files
pre-commit run --files <paths> # format/lint specific files
pre-commit run --all-files # sweep the whole repo
```

## Coding Style
Expand All @@ -135,7 +136,7 @@ are summarized below.
- Comment every class, every non-trivial method, every member variable.
- Do not restate the variable name. Either explain the semantic meaning or omit the comment.
- ❌ `// A simple counter.` above `size_t count_{0};`
- Avoid redundant comments that repeat what the code already says. Comments should explain *why*, not *what*.
- Avoid redundant comments that repeat what the code already says. Comments should explain *why*, not *what*. "Why" means why the code is the way it is — the constraint or tradeoff a reader must respect. Not how it got that way: what the code used to be, why that was wrong, and which alternative was rejected belong in the commit message.
- Use `// TODO: Description.` for future work. Do not include author's username.
- Do not duplicate comments between `.h` and `.cpp`. Document the function in the header; the implementation should not repeat the same comment. Duplicated comments diverge over time.

Expand Down
12 changes: 7 additions & 5 deletions CMake/resolve_dependency_modules/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,18 +32,20 @@ by Velox. See details on bundling below.
| fmt | 11.2.0 | Yes | Used API must be fmt 9 compatible |
| simdjson | 4.1.0 | Yes ||
| faiss | 1.11.0 | Yes ||
| folly | v2026.01.05.00 | Yes ||
| fizz | v2026.01.05.00 | No ||
| wangle | v2026.01.05.00 | No ||
| mvfst | v2026.01.05.00 | No ||
| fbthrift | v2026.01.05.00 | No ||
| folly | v2026.07.13.00 | Yes ||
| fizz | v2026.07.13.00 | No ||
| wangle | v2026.07.13.00 | No ||
| mvfst | v2026.07.13.00 | No ||
| fbthrift | v2026.07.13.00 | No ||
| libstemmer | 2.2.0 | Yes ||
| DuckDB (testing) | 0.8.1 | Yes ||
| arrow | 15.0.0 | Yes ||
| geos | 3.10.7 | Yes ||
| s2geometry | 0.12.0 | Yes ||
| fast_float | v8.0.2 | Yes ||
| xxhash | default | No ||
| flatbuffers | 24.3.25 | Yes | Only with `VELOX_ENABLE_NIMBLE=ON`. `flatc` is required, not just the runtime. Held at the version cuDF expects |
| openzl | 6b48fa48 | Yes | Only with `VELOX_ENABLE_NIMBLE=ON`. Pinned to a commit; no suitable release tag |

# Bundled Dependency Management
This module provides a dependency management system that allows us to automatically fetch and build dependencies from source if needed.
Expand Down
63 changes: 29 additions & 34 deletions CMake/resolve_dependency_modules/cudf.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -17,48 +17,48 @@ include_guard(GLOBAL)
# 4.0 is the minimum version required by cudf
cmake_minimum_required(VERSION 4.0)

# rapids_cmake commit 9c0829e from 2026-07-23 (release/26.08 branch)
set(VELOX_rapids_cmake_VERSION 26.08)
set(VELOX_rapids_cmake_COMMIT 9c0829ec73702b3df8a5c2ec43f6aaabe5f1e5ec)
# rapids_cmake commit 5df8fd1 from 2026-09-08 (release/26.10 branch)
set(VELOX_rapids_cmake_VERSION 26.10)
set(VELOX_rapids_cmake_COMMIT 5df8fd1ea26515b6b50fa94844ef1855e457048c)
set(
VELOX_rapids_cmake_BUILD_SHA256_CHECKSUM
3582f621f3b3d63952aafd716985901a075f2ad85602073973f3619761723962
f7cb91451aeae915f066907f9ae4eb555348fb62db1857c205a67691816c78c3
)
set(
VELOX_rapids_cmake_SOURCE_URL
"https://github.com/rapidsai/rapids-cmake/archive/${VELOX_rapids_cmake_COMMIT}.tar.gz"
)
velox_resolve_dependency_url(rapids_cmake)

# rmm commit 1a39f9e from 2026-07-24 (release/26.08 branch)
set(VELOX_rmm_VERSION 26.08)
set(VELOX_rmm_COMMIT 1a39f9e81c467b1a9522a4dcec8b5581ae165fef)
# rmm commit 9a693e0 from 2026-09-10 (release/26.10 branch)
set(VELOX_rmm_VERSION 26.10)
set(VELOX_rmm_COMMIT 9a693e042004e1da9d2e2db018ce2c2963437d59)
set(
VELOX_rmm_BUILD_SHA256_CHECKSUM
d8b82bc491a2c5b093cdfb4e1fb99630ccf16d1cbd69bc74451fbb56efc3e68c
98916c2801fd9ad72eba8bb95ac45813ac933a4877d2d43445fa174402949063
)
set(VELOX_rmm_SOURCE_URL "https://github.com/rapidsai/rmm/archive/${VELOX_rmm_COMMIT}.tar.gz")
velox_resolve_dependency_url(rmm)

# kvikio commit 93606c0 from 2026-07-23 (release/26.08 branch)
set(VELOX_kvikio_VERSION 26.08)
set(VELOX_kvikio_COMMIT 93606c074f3d863a7052af25afae569f72cb3304)
# kvikio commit 3ea0db0 from 2026-09-10 (release/26.10 branch)
set(VELOX_kvikio_VERSION 26.10)
set(VELOX_kvikio_COMMIT 3ea0db06a308925097e6fe84628f5888efca13b8)
set(
VELOX_kvikio_BUILD_SHA256_CHECKSUM
882e1b7c8950c0bf3520c3c317b0d85da2c91b66d90f3ff44ae81a60166979f3
b2c8418ef8eba3f08c4dcb859b3df44711b5ae5cbbf85fc8c5c09992bfb1f9bc
)
set(
VELOX_kvikio_SOURCE_URL
"https://github.com/rapidsai/kvikio/archive/${VELOX_kvikio_COMMIT}.tar.gz"
)
velox_resolve_dependency_url(kvikio)

# cudf commit 5beaa59 from 2026-07-27 (release/26.08 branch)
set(VELOX_cudf_VERSION 26.08 CACHE STRING "cudf version")
set(VELOX_cudf_COMMIT 5beaa5954688fcb12236ffb434e192ea2c77db30)
# cudf commit 456580f from 2026-09-11 (release/26.10 branch)
set(VELOX_cudf_VERSION 26.10 CACHE STRING "cudf version")
set(VELOX_cudf_COMMIT 456580fcdd726380dcb3de6b9686e7d47d6dd0a2)
set(
VELOX_cudf_BUILD_SHA256_CHECKSUM
1fc77d1ddf97ede67b783bbabacf69d658254be30b2859299f4255525443b1d3
160ff8be040c434c9f51fe3e41f08d26421c41710a8adabe559b1f994ad06959
)
set(VELOX_cudf_SOURCE_URL "https://github.com/rapidsai/cudf/archive/${VELOX_cudf_COMMIT}.tar.gz")
velox_resolve_dependency_url(cudf)
Expand All @@ -72,14 +72,17 @@ if(UCX_LIBRARY AND UCX_INCLUDE_DIR)
else()
set(UCX_FOUND FALSE)
endif()
if(UCX_FOUND)
# Configuring cuDF can overwrite UCX_FOUND before ucxx is declared below.
# Preserve this outer probe so a detected UCX installation always fetches ucxx.
set(VELOX_cudf_UCX_FOUND ${UCX_FOUND})
if(VELOX_cudf_UCX_FOUND)
message(STATUS "Found UCX: ${UCX_LIBRARY} (headers: ${UCX_INCLUDE_DIR}) -- ucxx will be fetched")
# ucxx commit b7faed1 from 2026-07-23 (release/0.51 branch)
set(VELOX_ucxx_VERSION 0.51)
set(VELOX_ucxx_COMMIT b7faed1a2e8038f63676183cdb056c3b69daa15d)
# ucxx commit 22d9c90 from 2026-09-09 (release/0.52 branch)
set(VELOX_ucxx_VERSION 0.52)
set(VELOX_ucxx_COMMIT 22d9c90a40055d439c3ec58f2606f2af620c5d71)
set(
VELOX_ucxx_BUILD_SHA256_CHECKSUM
3eb5ff5459dde31edf344f24f0b3086550be70961038b69229b05973b6f37524
cfb042ede89913744033aadacbe6768700a8ee8fe357cb80cbf47f14c9d4df5c
)
set(VELOX_ucxx_SOURCE_URL "https://github.com/rapidsai/ucxx/archive/${VELOX_ucxx_COMMIT}.tar.gz")
velox_resolve_dependency_url(ucxx)
Expand All @@ -93,17 +96,10 @@ block(SCOPE_FOR VARIABLES)
set(BUILD_TESTS OFF)
set(CUDF_BUILD_TESTUTIL OFF)
set(CUDF_BUILD_STREAMS_TEST_UTIL OFF)
# Keep spdlog/nvcomp shared to avoid multiple copies of spdlog in the final binary.
set(CUDF_BUILD_STATIC_DEPS OFF)
set(BUILD_SHARED_LIBS ON)

# TODO(mh,bd): Remove this once we have a permanent solution for the spdlog/fmt
# incompatibility.

# cuDF (via rapids_logger) pins spdlog 1.14.1, which is incompatible with
# the fmt 11.2.0 that Velox builds. Override the rapids-cmake/CPM spdlog
# version to 1.15.3, which is fmt 11.2 compatible.
# RAPIDS_CMAKE_CPM_OVERRIDE_VERSION_FILE is honored by every rapids_cpm_init,
# so the override applies before rapids_logger fetches spdlog.
set(RAPIDS_CMAKE_CPM_OVERRIDE_VERSION_FILE "${CMAKE_CURRENT_LIST_DIR}/cudf-cpm-overrides.json")
set(KvikIO_BUILD_NSYS_PLUGIN OFF)

FetchContent_Declare(
rapids-cmake
Expand Down Expand Up @@ -139,7 +135,7 @@ block(SCOPE_FOR VARIABLES)
UPDATE_DISCONNECTED 1
)

if(UCX_FOUND)
if(VELOX_cudf_UCX_FOUND)
FetchContent_Declare(
ucxx
URL ${VELOX_ucxx_SOURCE_URL}
Expand All @@ -152,7 +148,7 @@ block(SCOPE_FOR VARIABLES)

FetchContent_MakeAvailable(cudf)

if(UCX_FOUND)
if(VELOX_cudf_UCX_FOUND)
FetchContent_MakeAvailable(ucxx)
endif()

Expand All @@ -163,7 +159,6 @@ block(SCOPE_FOR VARIABLES)
cudf
PRIVATE -Wno-non-virtual-dtor -Wno-missing-field-initializers -Wno-deprecated-copy -Wno-restrict
)

unset(BUILD_SHARED_LIBS)
unset(BUILD_TESTING CACHE)
endblock()

This file was deleted.

71 changes: 71 additions & 0 deletions CMake/resolve_dependency_modules/flatbuffers.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# Copyright (c) Facebook, Inc. and its affiliates.
#
# Licensed 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.
include_guard(GLOBAL)

# Held at the version cuDF expects; do not bump on its own. cuDF resolves
# FlatBuffers through rapids_cpm_find(flatbuffers 24.3.25), which calls
# find_package() before falling back to its own download, and FlatBuffers'
# config-version file reports every newer version as compatible. Any later
# version visible to that find_package() is therefore used in place of 24.3.25,
# and cuDF's checked-in generated headers static_assert on major 24 / minor 3.
# Nimble itself only requires 22.9.4 or later, for build_flatbuffers().
set(VELOX_FLATBUFFERS_VERSION 24.3.25)
set(
VELOX_FLATBUFFERS_BUILD_SHA256_CHECKSUM
4157c5cacdb59737c5d627e47ac26b140e9ee28b1102f812b36068aab728c1ed
)
string(
CONCAT
VELOX_FLATBUFFERS_SOURCE_URL
"https://github.com/google/flatbuffers/archive/refs/tags/"
"v${VELOX_FLATBUFFERS_VERSION}.tar.gz"
)

velox_resolve_dependency_url(FLATBUFFERS)

message(STATUS "Building FlatBuffers from source")

# The flatc code generator is required, not just the runtime library: Nimble
# generates C++ headers from .fbs schemas at build time via build_flatbuffers().
# This version exports it as the plain `flatc` target, which build_flatbuffers()
# falls back to on its own, so there is no need to set
# FLATBUFFERS_FLATC_EXECUTABLE here. FlatBuffers does set that variable itself,
# but only in its own directory scope, so it never reaches Velox.
set(FLATBUFFERS_BUILD_FLATC ON)
set(FLATBUFFERS_BUILD_FLATLIB ON)
set(FLATBUFFERS_BUILD_SHAREDLIB OFF)
set(FLATBUFFERS_BUILD_FLATHASH OFF)
set(FLATBUFFERS_BUILD_TESTS OFF)
set(FLATBUFFERS_INSTALL OFF)

FetchContent_Declare(
flatbuffers
URL ${VELOX_FLATBUFFERS_SOURCE_URL}
URL_HASH ${VELOX_FLATBUFFERS_BUILD_SHA256_CHECKSUM}
OVERRIDE_FIND_PACKAGE
SYSTEM
EXCLUDE_FROM_ALL
)

FetchContent_MakeAvailable(flatbuffers)

# Consumers written against a system FlatBuffers use FLATBUFFERS_INCLUDE_DIR,
# which only FindFlatBuffers.cmake defines. Export it for the bundled build too
# so the same target_include_directories() call works either way.
set(
FLATBUFFERS_INCLUDE_DIR
"${flatbuffers_SOURCE_DIR}/include"
CACHE INTERNAL
"FlatBuffers include directory"
)
8 changes: 2 additions & 6 deletions CMake/resolve_dependency_modules/folly/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,10 @@ cmake_minimum_required(VERSION 3.28)
velox_set_source(FastFloat)
velox_resolve_dependency(FastFloat CONFIG REQUIRED)

set(VELOX_FOLLY_BUILD_VERSION v2026.01.05.00)
set(VELOX_FOLLY_BUILD_VERSION v2026.07.13.00)
set(
VELOX_FOLLY_BUILD_SHA256_CHECKSUM
8b41494b664fcde3d02f652d6a27381ec5e938ef58cf986d8ce4958d424af101
b2d4bc0029d466328e807efa673ad01c1086c385ffa800f2055543c3b9640a72
)
set(
VELOX_FOLLY_SOURCE_URL
Expand Down Expand Up @@ -57,10 +57,6 @@ set(FOLLY_HAVE_INT128_T ON)

FetchContent_MakeAvailable(folly)

# Folly::folly is not valid for FC but we want to match FindFolly
add_library(Folly::folly ALIAS folly)
add_library(Folly::follybenchmark ALIAS follybenchmark)

if(gflags_SOURCE STREQUAL "BUNDLED")
add_dependencies(folly glog::glog gflags::gflags fmt::fmt)
endif()
6 changes: 4 additions & 2 deletions CMake/resolve_dependency_modules/folly/folly-no-export.patch
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
# limitations under the License.
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -500,14 +500,14 @@ target_link_libraries(folly_test_util
@@ -296,15 +296,15 @@ target_link_libraries(folly_test_util
apply_folly_compile_options_to_target(folly_test_util)
list(APPEND FOLLY_INSTALL_TARGETS folly_test_util)

Expand All @@ -22,6 +22,7 @@
- RUNTIME DESTINATION bin
- LIBRARY DESTINATION ${LIB_INSTALL_DIR}
- ARCHIVE DESTINATION ${LIB_INSTALL_DIR})
-
-auto_install_files(folly ${FOLLY_DIR}
- ${hfiles}
-)
Expand All @@ -30,13 +31,14 @@
+# RUNTIME DESTINATION bin
+# LIBRARY DESTINATION ${LIB_INSTALL_DIR}
+# ARCHIVE DESTINATION ${LIB_INSTALL_DIR})
+#
+#auto_install_files(folly ${FOLLY_DIR}
+# ${hfiles}
+#)
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/folly/folly-config.h
DESTINATION ${INCLUDE_INSTALL_DIR}/folly
@@ -531,13 +531,13 @@ install(
@@ -328,13 +328,13 @@ install(
DESTINATION ${CMAKE_INSTALL_DIR}
COMPONENT dev
)
Expand Down
Loading
Loading