Releases: ClickHouse/clickhouse-cpp
Releases · ClickHouse/clickhouse-cpp
2.5.1 Bugfix release
Fixes
Full Changelog: v2.5.0...v2.5.1
2.5.0
New features
- Multiple endpoints for connection. by @MikhailBurdukov in #310 (and #327 by @Harvey-Liu)
- Add move semantics for
ColumnEnum
by @bduminiuc in #328 - Implemented
AppendRaw
/RawAt
forColumnDate
andColumnDate32
that work withuint16_t
/int32_t
by @Enmk in #320 - Fix
ColumnArrayT<ColumnLowCardinalityT<ColumnString>>::Append
by @Enmk in #331
Fixes
- Fix abnormal column names in gcc7.3.1 by @alenstarx in #317 (also #321 by @Enmk )
- Fix system cityhash setup by @ZhongRuoyu in #301
CI/CD and tests
Other
- Updated
ColumnString::LoadBody
by @Enmk in #309 - Fix compile warning by @1261385937 in #312
- added DEBUG_DEPENDENCIES by @Enmk in #302
- Set
backward_compatibility_lowcardinality_as_wrapped_column
default value tofalse
by @Enmk in #333
New Contributors
- @ZhongRuoyu made their first contribution in #301
- @MikhailBurdukov made their first contribution in #310
- @alenstarx made their first contribution in #317
- @bduminiuc made their first contribution in #328
- @Harvey-Liu made their first contribution in #327
Full Changelog: v2.4.0...v2.5.0
2.4.0
Fixes
- fix bug in ColumnLowCardinality::Load (#270 by @den818)
- fix bug with load/save Array with empty arrays (#272 by @den818)
- Fix crash on invalid AST (#273 by @Enmk)
- Fix getaddrinfo error reporting (#278 by @nUl1)
- Fixed deprecation warning (#285 by @Enmk)
New features
- timeout from seconds to milliseconds (#253 by @1261385937)
- Support column type: map (#254, #257 by @den818)
- Support geo column types (#258 by @den818)
- New method
ColumnTuple::At()
. (#268 by @huyphams) - ColumnNulableT and wrap for LowCardinalityT (#269 by @den818)
- Add connect timeout to socket (#277 by @nUl1)
- Handle "Bool" columns (#279 by @ays7)
- Added Query.onProfile and handling of Profile data (#298 by @Enmk)
New options (clickhouse::ClientOptions
)
- connection_connect_timeout - socket connect timeout, milliseconds
- connection_recv_timeout - socket recv timeout, milliseconds
- connection_send_timeout - socket send timeout, milliseconds
Other
- Separate building static and shared libs (#219 by @Jihadist)
- Update bench.cpp (#242 by @dabao085)
- Update LICENSE (#276 by @blinkov)
- Add options to use system abseil, lz4 and cityhash (#281 by @Jihadist)
- Dependencies info (#286 by @Enmk)
- Expand application tutorial (#293 by @rschu1ze)
- Fix formatting in README.md (#294 by @rschu1ze)
- Fixed gcc13 warnings (#296 by @ays7)
- Minor: Deprecated LowCardinalitySerializationAdaptor (#300 by @Enmk)
CI/CD
- Scheduling CI/CD runs on Monday midnight (#263 by @Enmk)
- Explicitly using ubuntu-20.04 instead of ubuntu-latest (#264 by @Enmk)
- Disabled
system.query_logs
-dependent unit-tests (#267 by @Enmk) - Don't run query id tests on non linux (#298 by @Enmk)
- Fix Windows build (#299 by @Enmk)
New Contributors
- @dabao085 made their first contribution in #242
- @nUl1 made their first contribution in #277
- @Jihadist made their first contribution in #219
- @ays7 made their first contribution in #279
- @rschu1ze made their first contribution in #293
Full Changelog: v2.3.0...v2.4.0
2.3.0
Fixes
- Fixed leaking socket (#228 by @Enmk)
- Fix build on UWP (#230 by @Thomas1664)
- Update CMake include directories (#247 by @KuribohG)
New features
- more flexible memory management for
ColumnString
(#202 by @1261385937) - Fix
CreateColumnFromAst
forEnum
(#210 by @1261385937) - Add recv/send timeouts to socket (#205 by @horoshenkiy, #217 by @1261385937)
- Client Write info (written rows/bytes ) (#221 by @den818)
- Per query settings (#231 by @den818)
- Receiving server logs (#222 by @den818)
- support open telemetry (#232 by @den818)
- Profile events for query (#236 by @den818)
Performance improvements
- Significantly improved
ColumnString
's performance (#248, #249 by @1261385937)
Other
- Style: added modificators: explicit and override for Compressed (#206 by @k-morozov)
- Fixed examples (#220 by @peter279k)
- updated protocol version (#223 by @den818)
- ClickHouse server 22.3 for Linux workflow (#240 by @Enmk)
Deprecated APIs and settings
FromString
and entire headerClientOptions::backward_compatibility_lowcardinality_as_wrapped_column
StringView
and entire header
See #233 #250
Full Changelog: v2.2.1...v2.3.0
2.2.1 Bugfix release
Fixes
- Fixed connection issue on windows (#196 by @inaryart)
- update CMake and install new
server_exception.h
by (#199 @xkommando)
Full Changelog: v2.2.0...v2.2.1
2.2.0
Major new features
- Proper Exception hierarchy to simplify exception handling from user side (#164 by @itrofimow)
- Added type-safe wrapper for Array column:
CollumnArrayT<T>
(#171 by @Enmk) - Added
Array(LowCardinality(X))
support (#173 by @arthurpassos) - Added
Date32
support viaColumnDate32
(#175 by @huyphams, #190 by @Enmk) - Added support of
LowCardinality(Nullable(X))
(#182 by @arthurpassos)
Fixes
ItemView
is now compatible with libcxx (#167 @itrofimow)- Fix build on clang & libc++ (#169 @DavidKeller)
- Fixed nested array support
Array(Array(...(X)))
(#171 by @Enmk) - Fixed handling
Hello
packet from server (#174 @huyphams) - Better performance of
ColumnArray::Slice
(#176 by @Enmk) - Minor optimization of
ColumnEnum
(#192 by @Enmk)
Other
#170, #179, #180, #181, #183, #189, #191, #193
Full Changelog: v2.1.0...v2.2.0
2.1.0
Changes since 2.0.0
Major new features
ColumnTuple::Append
#126- Socket injection by user #147
- Skipping SSL certificate validation on client side #152
- Allow setting Query_ID #161
Fixes
- Fix for MSVC compilation #128
- GCC-8 fix #134
- Fixed
ColumnIPv4::Append()
#148 - Fixed
ColumnIPv4
andColumnIPv6
construct from data #149 - Better performance for
Type::IsEqual()
#156
Other
#116, #118, #120, #131, #132, #135, #136, #137, #150, #155, #156
Full Changelog: v2.0.0...v2.1.0
2.0.0
1.5.0
Fixes
- Fixed build on GCC 10.2.1 (PR #56)
- Fixed socket connecting on Windows (PR #63)
- Fixed builds on platforms that do not have
__int128
intrinsic by usingabsl::Int128
(PR #66) - Fixed bug in
ColumnFixedString
on mismatching value size (PR #68) - Fixed
EnumType::GetName()
for empty enums (PR #70)
Features
- Allowing column names with spaces, quotes and other special symbols (PR #31)
- Gracefully handling unexpected communication termination on
INSERT
(PR #64) - Supporting timezone parameter for
DateTime
andDateTime64
(PR #70) - Added
TCP_NO_DELAY
support (PRs: #54 #74) - Allow users to explicitly access
LowCardinality(WrappedColumn)
column asWrappedColumn
(PR #79)