Skip to content

Releases: ClickHouse/clickhouse-cpp

2.6.0

21 Sep 20:49
6919524

Choose a tag to compare

New features

  • Breaking: clickhouse::UInt128 type definition has been changed from std::pair<uint64_t,uint64_t,> to absl::uint128 for consistency with clickhouse::Int128
  • Added methods Reserve and Capacity to numeric and date columns #330 by @rtcote
  • Added the Reserve method to other columns #341 by @1261385937
  • Added Block::Clear() and Block::Reserve() to clear or preallocate block capacity #427 by @Enmk
  • Modified ColumnLowCardinality::Reserve(X) to reserve sqrt(X) items, since items usually repeat #427 by @Enmk
    Added SwapElements and a comparison function to numeric and date columns to enable in-place sorting #330 by @rtcote
  • Added method GetWritableData to numeric columns #330, https://github.com/ClickHouse/clickhouse-cpp/pull/338/files by @rtcote and @Enmk
  • Implemented rvalue reference overload for ColumnArray::Append to allow optimizations when passing rvalues #345 by @1261385937
  • Added Client::GetVersion() to get the current library version; added version.h; extended build scripts to read and validate the version number during release; fixed #347 #348 #351 by @Enmk
  • Added FixedStringType::GetSize() #355 by @german3w1
  • Added support for ZSTD compression #367 by @byian
  • Added missing ColumnDateTime::RawAt() #375 by @moaazassali
  • Added Client::SelectWithExternalData(...) and Client::SelectWithExternalDataCancelable(...) to support queries with external data #419 by @pet74alex
  • Added UInt128 support; fixed #378 #424 by @pet74alex
  • Added validation when inserting into ColumnArray to prevent possible data corruption #428 by @IyeOnline
  • Changed the client name reported to the server to avoid confusion with the clickhouse client clienthttps://github.com//pull/439 by @slabko
  • Disabled BUILD_SHARED_LIBS, BUILD_BENCHMARK, and BUILD_TESTS when used as a submodule in another project #386 by @AndreyAlifanov
  • Allowed specifying parameters for each query via Query::SetParams(...) #394 by @OlegGalizin
  • Added DISABLE_CLANG_LIBC_WORKAROUND CMake parameter to disable linking compiler-rt & gcc_s when using Clang with libstdc++ #399 by @kclonts

Fixes

  • Fixed #408 by including dependencies in installation #409 by @fdr400
  • Correctly handled the return value of the send syscall #404 #407 by @dngrudin
  • Avoided calling the exception copy constructor when throwing exceptions #413 by @OlegGalizin
  • Fix #432 by adding missing files to installation #435 by @slabko
  • Portability fix: corrected types for recv_timeout and send_timeout #337 by @jiayuehua
  • Portability fix: renamed deprecated std::memory_order::memory_order_relaxed to std::memory_order_relaxed #343 by @georgthegreat
  • Portability fix: added missing includes #357 by @hdnpth
  • Portability fix: fixed compilation on MinGW #414 by @HRex39

Various test and documentation improvements

Full Changelog: v2.5.1...v2.6.0

Huge thanks to all contributors for their work on this release. Special thanks to @Enmk, whose long-term dedication and stewardship have kept this library thriving. It wouldn’t be the same without you.

2.5.1 Bugfix release

30 Sep 00:58
68e592c

Choose a tag to compare

Fixes

  • Fixed crash if Client was constructed with ClientOptions.SetSendRetries(0) by @Enmk in #336

Full Changelog: v2.5.0...v2.5.1

2.5.0

26 Sep 15:59
911ce93

Choose a tag to compare

New features

Fixes

CI/CD and tests

  • Less flaky tests when executing against remote server (not docker) by @Enmk in #329

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 to false by @Enmk in #333

New Contributors

Full Changelog: v2.4.0...v2.5.0

2.4.0

17 Apr 15:53
5a140ad

Choose a tag to compare

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

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

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

Full Changelog: v2.3.0...v2.4.0

2.3.0

21 Nov 18:23
4a186a8

Choose a tag to compare

Fixes

New features

Performance improvements

Other

Deprecated APIs and settings

Full Changelog: v2.2.1...v2.3.0

2.2.1 Bugfix release

02 Aug 08:15
ba90272

Choose a tag to compare

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

12 Jul 13:36
de70d97

Choose a tag to compare

Major new features

Fixes

Other

#170, #179, #180, #181, #183, #189, #191, #193

Full Changelog: v2.1.0...v2.2.0

2.1.0

09 Mar 06:13
a85a982

Choose a tag to compare

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 and ColumnIPv6 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

23 Nov 10:21
408ce18

Choose a tag to compare

New features

  • Added TLS support (#109)

Fixes

  • Fixed crash on sending large block by reducing LZ4-compression memory overhead (#110)

Other

  • GitHub actions for building/testing on both Linux and macOS (#107)
  • Minor style changes to cmake files (#112)
  • other minor things (#108, #114)

1.5.0

25 Mar 10:57
1415b59

Choose a tag to compare

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 using absl::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 and DateTime64 (PR #70)
  • Added TCP_NO_DELAY support (PRs: #54 #74)
  • Allow users to explicitly access LowCardinality(WrappedColumn) column as WrappedColumn (PR #79)

Other

  • Minor performance improvements (PR #58)
  • LZ4 version 1.9.2 (PR #60)
  • Minor API improvements (PR #82)