Releases: hazelcast/hazelcast-cpp-client
5.4.0
These release notes list any new features, enhancements, fixes, and breaking changes implemented in version 5.4.0 of the Hazelcast C++ Client.
This version is a minor release and is therefore fully backward-compatible with all 5.x and 4.x versions.
Please refer to the 5.4.0 milestone for details on all issues and PRs that were addressed in this release.
New Features
- on_cancel callback handler for the reliable_listener: Added new
reliable_listener.h on_cancel
callback method (#1215 , #1217)
Fixes
- Fix unused parameter warnings for all components (#1138)
Installation
See Installing section for installing the library
5.3.1
This document describes the enhancements and fixed issues for the Hazelcast C++ Client v5.3.1 release.
This version is a PATCH release and is fully backward-compatible with all Hazelcast clusters 5.x and 4.x versions.
Refer to the 5.3.1 milestone for details on all issues and PRs that were involved in this release.
Fixes
Installation
See Installing section for installing the library.
5.3.0
This document describes the new features, enhancements, and fixed issues for the Hazelcast C++ Client v5.3.0 release.
This version is a minor release and therefore is fully backward-compatible with all 5.x and 4.x versions.
Refer to the 5.3.0 milestone for details on all issues and PRs that were involved in this release.
New Features
- Partition Aware SQL Client : Sql API is now smarter in the sense that if it is a partition based operation, it will be routed directly to the correct member in the cluster. See the related section in the reference manual to learn the details. (#1167 , #1188)
- Sync iterators for Sql : The page and row sync iterators are added for easier usage of sql result set with std algorithms. See the related section in the reference manual to learn the details. (#1051 , #1161 )
Fixes
- Fix unused parameter warnings for all components (#1138)
Installation
See Installing section for installing the library.
Thanks
To community user @cngzhnp, sending PRs for compilation enhancements.
5.2.0
This document describes the new features, enhancements, and fixed issues for the Hazelcast C++ Client v5.2.0 release.
This version is a minor release and therefore is fully backward-compatible with all 5.x and 4.x versions.
Refer to the 5.2.0 milestone for details on all issues and PRs that were involved in this release.
Important note, minimum boost version is upgraded to 1.73 for Windows due to this bug.
New Features
- Compact Serialization : Compact Serialization is introduced. See the related section in the reference manual to learn the details. (#1082, #1039, #1067, #1150 )
- Generic Record API : Generic Record API is added. See the related section in the reference manual to learn the details. (#1086, #1156 )
- Added support for OpenSSL v3: The library is working with OpenSSL v3 and higher versions now. (#1098, #1097 )
Fixes
- CP Semaphore Test Failures are fixed (#1132)
- Reliable Topic Test Failures are fixed (#1087)
- Wrong SQL Timestamp column value is fixed (#1127)
- ODR violation compilation error is fixed (#1080)
- connection_manager_translate tests are fixed (#1123)
- Socket write buffer lifecycle problem is fixed (#1104, #1069, #1070)
- basic_latch_test.test_wait_for_when_timeout is fixed (#1109)
- ClientQueueTest.testRemainingCapacity is fixed (#1103)
- "The static lock used in logger may be destructed before the client is destroyed which may cause" issue is fixed (#977)
- User executor pool size can be set via ClientExecutionServiceImpl constructor. (#1089)
Installation
See Installing section for installing the library.
Thanks
To community user @cngzhnp, sending PRs for compilation enhancements.
5.1.0
New Features
- SQL API : SQL API is introduced. See the related section in the reference manual to learn the details. (#971, #1035, #1048, #1058, #1061)
- Added support for Hazelcast Viridian Services (#1045 )
- Big decimal support is added. (#967 )
Enchancements
- Small improvements in terms of performance. (#1027)
Fixes
hazelcast::client::member::version
symbols are exported.(#1041 )- Discovery token leakage through exception is fixed.(#1044 )
- Assertion failure in
proxy_session_manager
is fixed. (#1005, #1027) std::random_shuffle
usage removed due to it is removed in C++17 (#1043)- Client crash on Viridian cluster pause is fixed.(#1074 )
You can find the full list of closed issues and merged pull requests here
Installation
See Installing section for installing the library.
4.2.1
This document includes the new features, enhancements, and fixed issues for Hazelcast C++ Client 4.2.1 release.
New Features
There are no new features.
Enhancements
There are no enhancements.
Fixes
- Hazelcast C++ API issue with large messages [#980]. Solves the issue with large messages by not interleaving async_write calls.
- [BACKPORT] Make sure that the logger static lock mutex is not destroyed before any global client instance[#992]
You can find the full list of closed issues and merged pull requests here.
Installation
See Installing section for installing the library.
5.0.0
This document describes the new features, enhancements, and fixed issues in Hazelcast C++ Client v5.0.0.
New Features
No new features.
Enhancements
No enhancements.
Fixes
- Compile error in
imap::get_all
when value type ishazelcast_json_value
was fixed by @RikeVoltz in #926.
Installation
See the Installing section for installing the library.
4.2.0
This document describes the new features, enhancements, and fixed issues in Hazelcast C++ Client v4.2.0.
New Features
- External Smart Client Discovery was introduced by #909. See the related section in the reference manual to learn how to configure and use this new feature.
Enhancements
hazelcast::client::query::in_predicate
now supports passing values in a vector. This was introduced by #890.- Support for Hazelcast Management Center v4.2020.08 and above is added. See pull-request #897 for the implementation.
- The Basic Configuration section in the reference manual was updated to make the distinction between client and cluster configurations clearer. See the pull-request for details: #919.
Fixes
- A bug that, under certain conditions, caused the client not to send regular heartbeats and eventually get disconnected from the cluster was fixed. For details, see pull-request #891.
- Timestamps on some log lines could have a negative milliseconds field as reported in #892. This was fixed by #893.
- A dangling reference error was fixed in #913.
- A bug that caused the client to get stuck during shutdown was fixed. The issue was reported in #900 and fixed by #916.
You can find the full list of issues and pull-request for this release here.
Installation
See the Installing section for installing the library.
4.1.1
This document includes the new features, enhancements, and fixed issues for Hazelcast C++ Client 4.1.1 release.
New Features
There are no new features.
Enhancements
There are no enhancements.
Fixes
- Compile errors on older GCC versions (4.8, 4.9, and 5) were fixed.
You can find the full list of closed issues and merged pull requests here.
Installation
See Installing section for installing the library.
4.1.0
This document includes the new features, enhancements, and fixed issues for Hazelcast C++ Client 4.1.0 release.
The following are the major changes performed in this release:
New Features
-
Mutual Authentication (Two Way Authentication): Mutual Authentication is the process where the client verifies the identity of the server via server's certificate (either self-signed or signed by a CA authority) and the server verifies the client identity via the client provided certificate (either self-signed or signed by a CA authority). See PR #820
-
Hazelcast Cloud Discovery: If you are using Hazelcast Cloud Service and you want to write an application that will utilize the Hazelcast Cloud Database service, you can use the C++ client. See the detailed documentation and implementation PR.
-
Vcpkg and Conan Integrations: You can now use C++ client library with Conan and Vcpkg.
Enhancements
- SSL API Deprecation: The following APIs are deprecated in favor of using only the new
config::ssl_config::set_context(boost::asio::ssl::context context)
API. Hence, you have full access to the SSL context to be used and the you can configure it and provide it externally:config::ssl_config::set_enabled
,config::ssl_config::set_protocol
,config::ssl_config::get_protocol
,config::ssl_config::get_verify_files
,config::ssl_config::add_verify_file
.
Fixes
The following major issues have been fixed for this release.
- Fixed a dangling pointer in continuation lambda. [#854]
- The subscription to a Reliable Topic made from a member method of a class does not cause a deadlock now. [#848]
- Fixed a leakage in address sanitizer. [#847]
client_config::reliable_topic_config_map_
is now cannot be modified concurrently. [#849]
You can find the full list of closed issues here.
Installation
See Installing section for installing the library.