The ORC team is excited to announce the release of ORC v2.3.1.
- Released: 16 July 2026
- Source code: orc-2.3.1.tar.gz
- GPG Signature signed by Dongjoon Hyun (34F0FC5C)
- Git tag: rel/release-2.3.1
- Maven Central: ORC 2.3.1
- SHA 256: 6ef34f92cd81afbd…
- Fixed issues: ORC-2.3.1
The bug fixes:
- ORC-2123 [C++] Fix heap-use-after-free in ORC SearchArgument rewriteLeaves
- ORC-2131 Set default of orc.stripe.size.check.ratio and orc.dictionary.max.size.bytes to 0
- ORC-2151 [C++] Move the timestamp compensation before timezone conversion to prevent incorrect DST offset lookup
- ORC-2160 [C++] Expose prefetch range planning via Reader::preBufferRange and refactor preBuffer to reuse it
- ORC-2161 [C++] UnionColumnReader should reject out-of-range union tags
- ORC-2164 [C++] Add external-buffer support in DataBuffer lifecycle management
- ORC-2165 [C++] Fix bounds check for LZO stop command trailer
- ORC-2167 [C++] Fix integer overflow in PostScript footer length validation
- ORC-2177 Fix array conversion with empty first batch
- ORC-2187 Set protobuf message size limit in C++ reader
- ORC-2188 Reject invalid compression block size in PostScript
- ORC-2190 [C++] Reject compressed chunk length exceeding block size in C++ reader
- ORC-2191 Reject overflowing PostScript tail lengths in ReaderImpl
- ORC-2192 [C++] Reject invalid string length in StringDirectColumnReader
- ORC-2193 Parse encrypted FileStatistics via createCodedInputStream
- ORC-2196 [C++] Validate type tree when creating reader from serialized file tail
- ORC-2197 Reject negative decoded dictionary entry length in Java string dictionary reader
- ORC-2198 Validate stream offset+length against stripe data boundary in StripePlanner
- ORC-2199 Validate union tag against the number of children in UnionTreeReader
- ORC-2200 Validate stripe offset/index/data/footer lengths in the Java reader
The tasks:
- ORC-2117 Add Java 26-ea to GitHub Action build job
- ORC-2121 Add ubi10 to docker tests and GitHub Actions job
- ORC-2132 Use Java 26 instead of 26-ea
- ORC-2133 Remove Super-Linter from GitHub Actions jobs
- ORC-2134 Remove microsoft/setup-msbuild from GitHub Actions jobs
- ORC-2181 Add ubuntu-26.04(-arm)? to GitHub Actions build job
- ORC-2183 Use Visual Studio 18 2026 generator in Windows CIs
The build and dependency changes:
- ORC-2120 Upgrade lz4-java to 0.10.4
- ORC-2122 Upgrade spark.jackson.version to 2.21.1 in bench module
- ORC-2124 Upgrade Maven to 3.9.13
- ORC-2135 Upgrade mockito to 5.23.0
- ORC-2137 Upgrade kryo-shaded to 4.0.3
- ORC-2148 Upgrade lz4-java to 1.11.0
- ORC-2150 Upgrade ZLIB to 1.3.2
- ORC-2180 Upgrade threeten-extra to 1.9.0
- ORC-2189 Add URL_HASH to all third-party dependencies in ThirdpartyToolchain.cmake
- ORC-2195 Upgrade lz4-java to 1.11.1
The improvements (tools):
- ORC-2149 Supports merging multiple ORC files with the same schema into multiple ORC files
Documentation:
- ORC-2128 Add since Javadoc tags to all public orc-core class/interface/enum