billmcchesney1 / foxtrot

A store abstraction and analytics system for real-time event data.
Apache License 2.0
0 stars 0 forks source link

Update dependency com.hazelcast:hazelcast to v5 #426

Open mend-for-github-com[bot] opened 3 months ago

mend-for-github-com[bot] commented 3 months ago

This PR contains the following updates:

Package Type Update Change
com.hazelcast:hazelcast (source) test major 3.6.2 -> 5.2.5
com.hazelcast:hazelcast (source) compile major 3.6.2 -> 5.2.5

By merging this PR, the below issues will be automatically resolved and closed:

Severity CVSS Score CVE GitHub Issue
Critical 9.1 CVE-2022-36437 #361
High 8.1 CVE-2016-10750 #21
High 7.6 CVE-2023-45859 #424

Release Notes

hazelcast/hazelcast (com.hazelcast:hazelcast) ### [`v5.2.5`](https://togithub.com/hazelcast/hazelcast/releases/tag/v5.2.5) [Compare Source](https://togithub.com/hazelcast/hazelcast/compare/v5.2.4...v5.2.5) This document lists the enhancements and fixed issues for the Hazelcast Platform 5.2.5 release. The numbers in the square brackets refer to the issues and pull requests in Hazelcast's GitHub repository. ##### Enhancements - Improved the permission checks in the file connectors by adding a method that returns the permissions required to resolve field names. \[[#​25674](https://togithub.com/hazelcast/hazelcast/issues/25674)] - Updated the versions of following dependencies: \*\* Snappy to 1.1.10.5 \*\* gRPC to 1.59 \*\* Netty to 4.1.100.Final \*\* Elasticsearch to 7.17.13 \*\* Everit JSON Schema to 1.14.3 \[[#​24866](https://togithub.com/hazelcast/hazelcast/issues/24866)], \[[#​25820](https://togithub.com/hazelcast/hazelcast/issues/25820)], \[[#​25708](https://togithub.com/hazelcast/hazelcast/issues/25708)], \[[#​25729](https://togithub.com/hazelcast/hazelcast/issues/25729)], \[[#​25775](https://togithub.com/hazelcast/hazelcast/issues/25775)] ##### Fixes - Fixed an issue where the entry listeners for Replicated Maps were checking the Map permissions instead of the Replicated Map permissions. \[[#​25971](https://togithub.com/hazelcast/hazelcast/issues/25971)] - Fixed an issue where the map entries' metadata, such as time-to-live and expiration, was not replicated correctly over WAN after updating existing entries. \[[#​25506](https://togithub.com/hazelcast/hazelcast/issues/25506)] - Fixed an issue where there was a difference between the elapsed clock time and elapsed total time when listening to migration events. \[[#​25066](https://togithub.com/hazelcast/hazelcast/issues/25066)] - Fixed an issue where the member list was not updated after a cluster failover scenario. \[[#​24944](https://togithub.com/hazelcast/hazelcast/issues/24944)] - Renamed the service port for Hazelcast clusters deployed in Kubernetes environments to hazelcast. The previous name, `hazelcast-service-port`, caused member auto-discovery for embedded deployments to fail. \[[#​24841](https://togithub.com/hazelcast/hazelcast/issues/24841)] - Fixed an issue where Hazelcast was sending empty map interceptor information to the members that are newly joined to the cluster; it was causing eager map initializations. \[[#​24669](https://togithub.com/hazelcast/hazelcast/issues/24669)] ##### Removed/Deprecated Features - Removed the evaluation tool (for trying out Platform 5.x features for IMDG 3.x users) and the relevant IMDG 3.x JAR libraries from Hazelcast Platform distributions. \[[#​25697](https://togithub.com/hazelcast/hazelcast/issues/25697)] ##### Contributors We would like to thank the contributors from our open source community who worked on this release: - [Aleksei Zotov](https://togithub.com/azotcsit) ### [`v5.2.4`](https://togithub.com/hazelcast/hazelcast/releases/tag/v5.2.4) [Compare Source](https://togithub.com/hazelcast/hazelcast/compare/v5.2.3...v5.2.4) This document lists the enhancements and fixed issues for the Hazelcast Platform 5.2.4 release. The numbers in the square brackets refer to the issues and pull requests in Hazelcast's GitHub repository (github.com/hazelcast/hazelcast). ##### Enhancements - Updated the version of `jackson-core` dependency to 2.15.2. \[[#​24730](https://togithub.com/hazelcast/hazelcast/issues/24730)] - Hazelcast was sending requests to Kubernetes API when deploying an application with embedded Hazelcast and `service-dns` (DNS lookup mode) specified to a Kubernetes cluster. This was causing the requests to be unsuccessful and the application not to start. This mechanism has been improved by creating Kubernetes client only for the DNS lookup mode. \[[#​24045](https://togithub.com/hazelcast/hazelcast/issues/24045)] ##### Fixes - Fixed an issue where some of the members in a Hazelcast cluster deployed on Kubernetes (as a statefulset) shut down with en exception in a delayed manner. \[[#​24709](https://togithub.com/hazelcast/hazelcast/issues/24709)] - Fixed an issue where Jet job snapshots could be prematurely deleted after a restart of a cluster, having lossless restart enabled. \[[#​24576](https://togithub.com/hazelcast/hazelcast/issues/24576)] - Fixed an issue where the SELECT COUNT(DISTINCT COLUMN) query for maps was producing incorrect results. \[[#​24490](https://togithub.com/hazelcast/hazelcast/issues/24490)] - Fixed various issues in \[Health Monitor] including incorrect metric names. \[[#​24634](https://togithub.com/hazelcast/hazelcast/issues/24634)] - Fixed an issue where the REST calls were failing for Hazelcast clusters with TLS v1.3 configured, and deployed on Kubernetes. \[[#​24624](https://togithub.com/hazelcast/hazelcast/issues/24624)] - Fixed an issue where SQL statements were failing when a class (to determine the fields of a key/value pair) no longer exists but the mapping is still valid. \[[#​24043](https://togithub.com/hazelcast/hazelcast/issues/24043)] - Fixed an issue where `lastAccessTime` and `expirationTime` was not updated when an entry is accessed via `executeOnEntries`. \[[#​24012](https://togithub.com/hazelcast/hazelcast/issues/24012)] ### [`v5.2.3`](https://togithub.com/hazelcast/hazelcast/releases/tag/v5.2.3) [Compare Source](https://togithub.com/hazelcast/hazelcast/compare/v5.2.2...v5.2.3) This document lists the enhancements and fixes for Hazelcast Platform 5.2.3 release. The numbers in the square brackets refer to the issues and pull requests in Hazelcast's GitHub repository. ##### Enhancements - When advanced networking is enabled, the Kubernetes discovery plugin might have been discovering several endpoints (per each port) for each member's pod. The discovery plugin now matches only the private IP per endpoint, ignoring the port values. \[[#​23931](https://togithub.com/hazelcast/hazelcast/issues/23931)] - Introduced the `hazelcast.discovery.public.address.fallback` property to enable smart client connectivity to Hazelcast clusters deployed on Kubernetes, and having advanced network configuration enabled.\[[#​23920](https://togithub.com/hazelcast/hazelcast/issues/23920)] ##### Fixes - Fixed an issue where a ECS Fargate cluster was failing to start due to the `Failed to configure discovery strategies` error. \[[#​23939](https://togithub.com/hazelcast/hazelcast/issues/23939)] - Fixed an issue where the Hazelcast configuration was modified by the Jet engine, if the wildcard configuration is used and Jet is enabled; meaning the configurations made by the user was not being reflected. \[[#​23877](https://togithub.com/hazelcast/hazelcast/issues/23877)] - Fixed an issue where Debezium connector for MongoDB could not keep the connection after some time. \[[#​23690](https://togithub.com/hazelcast/hazelcast/issues/23690)] ### [`v5.2.2`](https://togithub.com/hazelcast/hazelcast/releases/tag/v5.2.2) [Compare Source](https://togithub.com/hazelcast/hazelcast/compare/v5.2.1...v5.2.2) This document lists the new features, enhancements, fixed issues and, removed or deprecated features for **Hazelcast Platform 5.2.2** release. The numbers in square brackets refer to the pull requests in Hazelcast's GitHub repository. ##### Breaking Changes - Changed the default cloud coordinator URL from `coordinator.hazelcast.cloud` to `api.viridian.hazelcast.com`. When you use the default configuration, it now connects to Hazelcast Viridian instead of Hazelcast Cloud, potentially leading to not being able to connect to the cloud cluster. If you want to use Hazelcast Cloud, you need to change the value of `hazelcast.client.cloud.url` property to `https://coordinator.hazelcast.cloud`. \[[#​23304](https://togithub.com/hazelcast/hazelcast/issues/23304)] ##### Enhancements - Added support of [IMDSv2](https://aws.amazon.com/about-aws/whats-new/2022/10/amazon-machine-images-support-instance-metadata-service-version-2-default/#:~:text=Posted%20On%3A%20Oct%203%2C%202022,depth%20against%20unauthorized%20metadata%20access.) for Hazelcast's AWS Discovery plugin. - Hazelcast now allows serializing unsupported types via xref:serialization:compact-serialization.adoc#using-compact-serialization-with-zero-configuration\[zero-configuration] provided that there is an explicit serializer implemented for the unsupported type. \[[#​23569](https://togithub.com/hazelcast/hazelcast/issues/23569)] - Added `flock` to guard concurrent `pip` runs. \[[#​22934](https://togithub.com/hazelcast/hazelcast/issues/22934)] - Added the ability of discovering ECS and EC2 clients by the Hazelcast members on Amazon ECS. \[[#​22630](https://togithub.com/hazelcast/hazelcast/issues/22630)] ##### Fixes - Fixed an issue where excessive amount of Kubernetes API calls were being logged when Automatic State Management feature is enabled in a Hazelcast cluster running on Kubernetes. \[[#​23576](https://togithub.com/hazelcast/hazelcast/issues/23576)] - Fixed an issue where the JSON Query results were inconsistent, using the data stored as JSON via `HazelcastJsonValue`. \[[#​23453](https://togithub.com/hazelcast/hazelcast/issues/23453)] - Fixed an issue where the unordered `mapUsingServiceAsync()` was losing the last items when there are no watermarks. \[[#​23272](https://togithub.com/hazelcast/hazelcast/issues/23272)] - Fixed an issue where the message of an exception caused when reading a JDBC table column metadata was showing the data source reference instead of the table name. \[[#​23123](https://togithub.com/hazelcast/hazelcast/issues/23123)] - Fixed an issue where the recorded moment of submitted job's start time was causing a race condition. For short jobs, the job might have been completed even before recording the `startTime` metric; since this metric is collected after the job is submitted. Now, this metric is collected just before submitting a job. \[[#​23066](https://togithub.com/hazelcast/hazelcast/issues/23066)] - Fixed an issue where the offloading of map stores (which is enabled by default) was leading to unexpected unlocking behavior when committing transactions. \[[#​22937](https://togithub.com/hazelcast/hazelcast/issues/22937)] ### [`v5.2.1`](https://togithub.com/hazelcast/hazelcast/releases/tag/v5.2.1) [Compare Source](https://togithub.com/hazelcast/hazelcast/compare/v5.2.0...v5.2.1) This document lists the new features, enhancements, fixed issues and, removed or deprecated features for **Hazelcast Platform 5.2.1** releases. The numbers in the square brackets refer to the issues and pull requests in Hazelcast's GitHub repository. ##### Enhancements - Added support for discovering ECS and EC2 members on AWS. See Deploying a Cluster on Amazon AWS. \[[#​22590](https://togithub.com/hazelcast/hazelcast/issues/22590)] ##### Fixes - Fixed a memory leak due to incomplete clean-up of backup replica sync operations. \[[#​22756](https://togithub.com/hazelcast/hazelcast/issues/22756)] - Fixed an issue where a map was loading old values with `map.set()` when map store offloading is enabled. \[[#​22603](https://togithub.com/hazelcast/hazelcast/issues/22603)] - Fixed an issue where the map entries recovered from persistence were not expiring after their time-to-live durations. \[[#​22557](https://togithub.com/hazelcast/hazelcast/issues/22557)] - Fixed an issue where external data store configurations could not be added dynamically. \[[#​22464](https://togithub.com/hazelcast/hazelcast/issues/22464)] ### [`v5.2.0`](https://togithub.com/hazelcast/hazelcast/releases/tag/v5.2.0) [Compare Source](https://togithub.com/hazelcast/hazelcast/compare/v5.1.7...v5.2.0) This document lists the new features, enhancements, fixed issues and, removed or deprecated features for **Hazelcast Platform 5.2.0** release. The numbers in the square brackets refer to the issues and pull requests in Hazelcast's GitHub repository. ##### New Features - **SQL stream-to-stream joins:** You can now correlate multiple streams of data with each other using the relational join operation. - **Generic MapStore (BETA):** You no longer need to write Java code to get data from an external data store, such as a relational database, into Hazelcast by implementing the `MapStore` or `MapLoader` interfaces. - **JDBC connector (BETA):** You can now use SQL to connect to and query any database that supports the JDBC interface. - **CP Subsystem Leadership Priority:** To ensure the availability of the CP subsystem, you can now transfer CP member leadership to another member: There are cases when some CP members should not act as a leader. For example, a member with high load would not be a good leader, or, in a WAN deployment, members in a primary datacenter may be preferred in order to minimize the latency between the clients and leader. You can transfer the leadership using the `cp-member-priority` configuration element. See Configuring Leadership Priority. - **User Defined Types (Experimental):** You can now query nested objects within Java, compact, and portable mappings using the User Defined Types (UDTs). ##### Breaking Changes - Introduced a check to control the versions of Hazelcast Platform members and Hazelcast CLI are matched. Previously, it was possible to submit a job using a different version of CLI from the member version. Generally, it would work when there were no change in the serialized form of pipeline. Now, Hazelcast fails earlier in this case. \[[#​22224](https://togithub.com/hazelcast/hazelcast/issues/22224)] - Removed the `BETA` annotations from the compact serialization and `GenericRecord` related classes, i.e., they are stable. Now, compact serialization is enabled by default; the `enabled` attribute within the `compact-serialization` configuration block does not exist anymore. \[[#​21997](https://togithub.com/hazelcast/hazelcast/issues/21997)] ##### Enhancements ##### Performance - **MapStore Offloading:** Added `offload` element to map store configuration. It is used to offload map store and loader operations for each map in the cluster. This way, a map store operation does not block the next operations by blocking a partition thread indefinitely. Partition threads are one of the most important shared resources in a cluster; this offloading enables faster completion of the operations in these threads. See Offloading MapStore and MapLoader Operations. \[[#​21651](https://togithub.com/hazelcast/hazelcast/issues/21651)] ##### SQL Engine - Multiple performance enhancements in the SQL engine. ##### Distribution - Removed `hazelcast-hibernate53` dependency from the main Hazelcast Platform distribution as it is not needed anymore. \[[#​22282](https://togithub.com/hazelcast/hazelcast/issues/22282)] - Minor versions of Hazelcast Platform are now released as X.Y.0, instead of the previous X.Y versioning scheme. \[[#​22218](https://togithub.com/hazelcast/hazelcast/issues/22218)] ##### Serialization - Added support of `List`, `ArrayList`, `Set`, `HashSet`, `Map`, and `HashMap` for the zero-config serializers. \[[#​21980](https://togithub.com/hazelcast/hazelcast/issues/21980)] - Added a check to the array of `Compact` and `GenericRecord` object fields, that does not allow different item types and schemas in such fields. \[[#​21958](https://togithub.com/hazelcast/hazelcast/issues/21958)] - Moved the `GenericRecord` and `GenericRecordBuilder` interfaces to the new `serialization.genericrecord` package. \[[#​21955](https://togithub.com/hazelcast/hazelcast/issues/21955)] - In case there is a field type that is not supported by the reflective serializer, now Hazelcast fails with an exception; all JDK classes are now excluded from the zero-config serialization, meaning, they cannot be used as types, field types, or array component types in the reflective serializers. \[[#​21918](https://togithub.com/hazelcast/hazelcast/issues/21918)] - Hazelcast now does not provide methods to read a default value in case of a missing field in the data. Instead, the following method has been introduced in `CompactReader` to check the existence of a field with its name and kind.+ FieldKind getFieldKind(String fieldName); You can use this method for fields that have changed or have a potential to change in the future. \[[#​21876](https://togithub.com/hazelcast/hazelcast/issues/21876)] - Moved the `type-name` and `class` configuration elements into the `compact-serialization` block. Removed the `registered-classes` element. \[[#​21861](https://togithub.com/hazelcast/hazelcast/issues/21861)] - Renamed the `cloneWithBuilder()` method as `newBuilderWithClone()` in the `GenericRecord` class. \[[#​21730](https://togithub.com/hazelcast/hazelcast/issues/21730)] - Added support for `char` fields in the compact serialization format. With this, `char`, `char[]`, `Character`, and `Character[]` fields are now supported in the reflective compact serializers. \[[#​21054](https://togithub.com/hazelcast/hazelcast/issues/21054)] ##### Configuration - REST API is now enabled by default when you use Hazelcast Platform with Docker or by downloading the distribution packages (ZIP or TAR). \[[#​22249](https://togithub.com/hazelcast/hazelcast/issues/22249)] - Member discoveries in cloud environments (AWS, GCP, Azure, Kubernetes, Eureka) in Spring XML can be configured now using property placeholders. \[[#​21995](https://togithub.com/hazelcast/hazelcast/issues/21995)] - Added configuration elements for external data stores used by map stores, and JDBC sinks and sources. See Configuring Connections to External Data Stores. \[[#​21716](https://togithub.com/hazelcast/hazelcast/issues/21716)] - Introduced a way to configure AWS Asynchronous Client's executor service used by Jet engine's Kinesis sources and sinks (thread pool size, threads names pattern). For this purpose, `AwsConfig` is extended with an additional `executorServiceSupplier` field that allows to specify what executor service to be used. \[[#​21075](https://togithub.com/hazelcast/hazelcast/issues/21075)] ##### Other Enhancements - You can now provide comma-separated lists to give multiple labels for the Kubernetes Discovery Plugin configurations `service-label-name`, `service-label-value`, `pod-label-name`, and `pod-label-value`. \[[#​22277](https://togithub.com/hazelcast/hazelcast/issues/22277)] - Added a new method which allows to update a map entry's value without changing its previously set expiration time. See https://docs.hazelcast.org/docs/5.2.0/javadoc/com/hazelcast/map/ExtendedMapEntry.html#setValueWithoutChangingExpiryTime-V-. \[[#​22199](https://togithub.com/hazelcast/hazelcast/issues/22199)] - Added support of configuring the maximum message size for Python runner, when using the Jet engine with Python. \[[#​22106](https://togithub.com/hazelcast/hazelcast/issues/22106)] - Fixed an issue where a client was infinitely trying to reconnect to the cluster with CP persistence enabled. \[[#​21769](https://togithub.com/hazelcast/hazelcast/issues/21769)] - Improved the change data capture API: - Introduced two new methods, ` newValue() `and `oldValue()`, to compare values before and after an update of a record. - Methods that are used to extract metadata are no longer doing on the fly parsing of the payload, meaning there won't be any `ParsingException` and you don't have to deal with those possible exceptions. - Expose the Debezium source method, which takes a class instance instead of `String` with class name, to make the code more strongly-typed. \[[#​21536](https://togithub.com/hazelcast/hazelcast/issues/21536)] - You can now specify multiple partitions while using predicate queries. This can only be done using https://docs.hazelcast.org/docs/5.2.0/javadoc/com/hazelcast/query/Predicates.html#multiPartitionPredicate-java.util.Set-com.hazelcast.query.Predicate-. \[[#​21319](https://togithub.com/hazelcast/hazelcast/issues/21319)] - To decrease the load on the Management Center for large clusters, the level of network related metrics has been changed to `DEBUG`. When you need these metrics, you can use the `hazelcast.metrics.debug.enabled`] property. \[[#​21232](https://togithub.com/hazelcast/hazelcast/issues/21232)] - While building Hazelcast from the source, you can now use the boolean `hazelcast.disable.docker.tests` property to ignore the tests that require Docker to run (by setting it to `false`). \[[#​21087](https://togithub.com/hazelcast/hazelcast/issues/21087)] - Improved connection handling. \[[#​21631](https://togithub.com/hazelcast/hazelcast/issues/21631)] - Added support of dynamic update of IP addresses of cluster members. For this, a new REST endpoint (`hazelcast/rest/config/tcp-ip/member-list`) is introduced for getting and updating the member list at runtime. This improves the split-brain recovery under even certain corner cases and ensures that the cluster recovery from split-brain in every cluster setup can be initially formed. \[[#​20552](https://togithub.com/hazelcast/hazelcast/issues/20552)] - Added support of nested fields for Hazelcast's Java classes. \[[#​19954](https://togithub.com/hazelcast/hazelcast/issues/19954)] ##### Fixes - Fixed an issue where map persistence was not working when configured programmatically. See https://github.com/vbekiaris/hazelcast/commit/e7828b8d3551bbfcb92bdc3cc5924edcdc530856. - Fixed an issue where the `IS NULL` condition was being ignored when there is another condition for the same column. \[[#​22238](https://togithub.com/hazelcast/hazelcast/issues/22238)] - Fixed an issue where the `IMap.get()` call was blocked when `NoNodeAvailableException` is thrown from the MapStore. \[[#​22168](https://togithub.com/hazelcast/hazelcast/issues/22168)] - Fixed an issue where `ClearBackupOperation` in maps was being reported as a slow operation on the members which was causing the entire cluster to be frozen. \[[#​22082](https://togithub.com/hazelcast/hazelcast/issues/22082)] - Fixed an issue where the cluster merge was not happening properly when the master member does not know the addresses of the other members and if the other members start before the master one. \[[#​22021](https://togithub.com/hazelcast/hazelcast/issues/22021)] - Fixed an issue where the failover client statistics was not calculated properly. \[[#​21807](https://togithub.com/hazelcast/hazelcast/issues/21807)] - Fixed an issue where an internal periodic task (with an interval of 1 second) was trying to connect a client to all cluster members, even if there is no connection to the cluster yet: - A client connects to the cluster (where smart routing is enabled by default) - Connection is lost due to a failure - When the cluster is up, the client retries to connect for the configured wait time between retries - During these reconnection attempts, the internal periodic task was outputting logs of connection failure for each second until the client connects to the cluster. \[[#​21705](https://togithub.com/hazelcast/hazelcast/issues/21705)] - SQL storage now is able to replicate data to the newly joined members in the cluster. \[[#​21632](https://togithub.com/hazelcast/hazelcast/issues/21632)] - Fixed an issue where `NullPointerException` was thrown around the `CREATE JOB` statement which is using Kafka Sink connector when Kafka has no records yet. Now, it produces an appropriate log message. \[[#​21460](https://togithub.com/hazelcast/hazelcast/issues/21460)] - Fixed an issue where a cluster could not be formed when security is enabled, various client permissions are set, and multiple members are started simultaneously. \[[#​21440](https://togithub.com/hazelcast/hazelcast/issues/21440)] - Fixed an issue where data persistence and tiered storage configurations could not be added dynamically. \[[#​21432](https://togithub.com/hazelcast/hazelcast/issues/21432)] - Fixed a data loss issue which was occurring with graceful shutdown with when a member (with zero backup) restarts on the same address. \[[#​21428](https://togithub.com/hazelcast/hazelcast/issues/21428)] - Fixed an issue where a map remains empty after a put operation when the `max-idle-seconds` configuration has the value of `Integer.MAX_VALUE`. \[[#​21409](https://togithub.com/hazelcast/hazelcast/issues/21409)] - Fixed an issue where a cluster was unresponsive when you perform a health check to see the members are in the safe state; cluster members were hanging in the `REPLICA_NOT_SYNC` state during such health checks. \[[#​21145](https://togithub.com/hazelcast/hazelcast/issues/21145)] - Fixed an issue where the statistics like puts and removals were not increasing when these operations are executed through Transactional interface. \[[#​21086](https://togithub.com/hazelcast/hazelcast/issues/21086)] - Fixed an issue where a set time-to-live (TTL) duration for an entry was ignoring the split seconds. For example, when you set TTL as 1 seconds and put an entry at 01:01:5.99 AM , then the entry was already expired when you want to get this entry at 01:01:6.01 AM (should have been expired at 01:01:6.99 AM). \[[#​21018](https://togithub.com/hazelcast/hazelcast/issues/21018)] - Fixed a data race in `SingleProtocolEncoder`; while one method of this interface is called from the input thread, another one is called from the output thread which was causing the race. \[[#​20991](https://togithub.com/hazelcast/hazelcast/issues/20991)] - Fixed an issue where the automatic module name in `hazelcast-5.x.jar` could not be detected using Gradle. The reason was `/META-INF/MANIFEST.MF` not being the first or second entry in the JAR file; now this manifest file is the second entry. \[[#​20969](https://togithub.com/hazelcast/hazelcast/issues/20969)] - Fixed an issue where the list of members in the cluster was reset to an empty list when the UUID of a cluster changes after its restart: this was causing startup failures since Hazelcast could not manage the events due to the empty member list after a restart. \[[#​20818](https://togithub.com/hazelcast/hazelcast/issues/20818)] - Fixed an issue where `JSON_QUERY` with expression filter in SQL was not producing a result when the data source contains internal array(s). \[[#​20761](https://togithub.com/hazelcast/hazelcast/issues/20761)] - Fixed the mapping issue of Hazelcast map fields in SQL; when the value object contains a public getter of `java.util.Map`, the `CREATE MAPPING` statement was failing. \[[#​20256](https://togithub.com/hazelcast/hazelcast/issues/20256)] - Fixed an issue where the cluster was not merging properly if the master member does not know other members' addresses and when the other members start before the master member. \[[#​18661](https://togithub.com/hazelcast/hazelcast/issues/18661)] ##### Contributors We would like to thank the contributors from our open source community who worked on this release: - [Christoph Dreis](https://togithub.com/dreis2211) - [Andrzej Nestoruk](https://togithub.com/anestoruk) - [Callum Galbreath](https://togithub.com/software-is-art) ### [`v5.1.7`](https://togithub.com/hazelcast/hazelcast/releases/tag/v5.1.7) [Compare Source](https://togithub.com/hazelcast/hazelcast/compare/v5.1.6...v5.1.7) This document lists the enhancements and fixed issues for Hazelcast Platform 5.1.7 release. The numbers in the square brackets refer to the issues in Hazelcast's GitHub repositories. ##### Enhancements - Added support of \[IMDSv2] for Hazelcast’s AWS Discovery plugin. \[[#​23594](https://togithub.com/hazelcast/hazelcast/issues/23594)] - Updated the version of jackson-core dependency to 2.15.2. \[[#​24731](https://togithub.com/hazelcast/hazelcast/issues/24731)] ##### Fixes - Fixed an issue where Hazelcast was sending empty map interceptor information to the members which are newly joined to the cluster; it was causing eager map initializations. \[[#​24668](https://togithub.com/hazelcast/hazelcast/issues/24668)] - Fixed various issues in Health Monitor including incorrect metric names. \[[#​24633](https://togithub.com/hazelcast/hazelcast/issues/24633)] - Fixed an issue where the REST calls were failing for Hazelcast clusters with TLS v1.3 configured, and deployed on Kubernetes. \[[#​24625](https://togithub.com/hazelcast/hazelcast/issues/24625)] - Fixed a parsing issue in JSON arrays when using predicate queries; it was causing the JSON query results to be varied according to the property order. \[[#​23452](https://togithub.com/hazelcast/hazelcast/issues/23452)] ##### Contributors We would like to thank the contributors from our open source community who worked on this release: - [Aleksei Zotov](https://togithub.com/azotcsit) ### [`v5.1.6`](https://togithub.com/hazelcast/hazelcast/releases/tag/v5.1.6) [Compare Source](https://togithub.com/hazelcast/hazelcast/compare/v5.1.5...v5.1.6) This document lists the new features, enhancements, fixed issues and, removed or deprecated features for Hazelcast Platform 5.1.6 release. The numbers in the square brackets refer to the issues in Hazelcast's GitHub repositories. ##### Enhancements - Updated the parquet dependency to 1.13.0. [#​24469](https://togithub.com/hazelcast/hazelcast/issues/24469) - Hazelcast was sending requests to Kubernetes API when deploying an application with embedded Hazelcast and service-dns (DNS lookup mode) specified to a Kubernetes cluster. This was causing the requests to be unsuccessful and the application not to start. This mechanism has been improved by creating Kubernetes client only for the DNS lookup mode. [#​24044](https://togithub.com/hazelcast/hazelcast/issues/24044) - Updated the everit-json-schema dependency to 1.14.2. [#​23971](https://togithub.com/hazelcast/hazelcast/issues/23971) - When advanced networking is enabled, the Kubernetes discovery plugin might have been discovering several endpoints (per each port) for each member’s pod. The discovery plugin now matches only the private IP per endpoint, ignoring the port values. [#​23932](https://togithub.com/hazelcast/hazelcast/issues/23932) - Introduced the hazelcast.discovery.public.address.fallback property to enable smart client connectivity to Hazelcast clusters deployed on Kubernetes, and having advanced network configuration enabled. [#​23921](https://togithub.com/hazelcast/hazelcast/issues/23921) ##### Fixes - Fixed an issue where lastAccessTime and expirationTime was not updated when an entry is accessed via executeOnEntries. [#​24011](https://togithub.com/hazelcast/hazelcast/issues/24011) ### [`v5.1.5`](https://togithub.com/hazelcast/hazelcast/releases/tag/v5.1.5) [Compare Source](https://togithub.com/hazelcast/hazelcast/compare/v5.1.4...v5.1.5) This document lists the new features, enhancements, fixed issues and, removed or deprecated features for **Hazelcast Platform 5.1.5** releases. The numbers in the square brackets refer to the issues in Hazelcast's GitHub repositories. ##### Fixes - Fixed a memory leak due to incomplete clean-up of backup replica sync operations. \[[#​22767](https://togithub.com/hazelcast/hazelcast/issues/22767)] - Fixed an issue where `NullPointerException` was thrown around the `CREATE JOB` statement which is using Kafka Sink connector when Kafka has no records yet. Now, it produces an appropriate log message. \[[#​22697](https://togithub.com/hazelcast/hazelcast/issues/22697)] - Fixed an issue where the map entries recovered from persistence were not expiring after their time-to-live durations. \[[#​22558](https://togithub.com/hazelcast/hazelcast/issues/22558)] - Fixed an issue where replication over WAN was failing on the source cluster members, when there are multiple batch publishers configured in a single WAN replication. \[[#​22500](https://togithub.com/hazelcast/hazelcast/issues/22500)] ### [`v5.1.4`](https://togithub.com/hazelcast/hazelcast/releases/tag/v5.1.4) [Compare Source](https://togithub.com/hazelcast/hazelcast/compare/v5.1.3...v5.1.4) This document lists the new features, enhancements, fixed issues and, removed or deprecated features for **Hazelcast Platform 5.1.4** release. The numbers in the square brackets refer to the issues in Hazelcast's GitHub repositories. ##### Enhancements - Removed the `hazelcast-jet-cdc-mysql` module from the Hazelcast Platform Enterprise distributions due to licensing. You need to manually download this module if you have the Enterprise edition. See xref:pipelines:cdc.adoc#step-4-start-hazelcast\[Capture Changes from MySQL] for details. [#​5312](https://togithub.com/hazelcast/hazelcast/issues/5312) - The Kubernetes discovery plugin has been enhanced to support the service token expiration. The token is time-bound and its content is refreshed periodically in the recent Kubernetes versions. A new token reader has been implemented to get the token value periodically. \[[#​22394](https://togithub.com/hazelcast/hazelcast/issues/22394)] - You can now provide comma-separated lists to give multiple labels for the Kubernetes Discovery Plugin configurations `service-label-name`, `service-label-value`, `pod-label-name`, and `pod-label-value`. \[[#​22401](https://togithub.com/hazelcast/hazelcast/issues/22401)] ### [`v5.1.3`](https://togithub.com/hazelcast/hazelcast/releases/tag/v5.1.3) [Compare Source](https://togithub.com/hazelcast/hazelcast/compare/v5.1.2...v5.1.3) This document lists the new features, enhancements, fixed issues, and removed or deprecated features for **Hazelcast Platform v5.1.3** release. The numbers in the square brackets refer to the issues in Hazelcast's GitHub repositories. ##### Enhancements - Improved connection handling. \[[#​21641](https://togithub.com/hazelcast/hazelcast/issues/21641)] ##### Fixes - When the `hazelcast.socket.buffer.direct` property is enabled, clusters no longer throw exceptions in response to text protocols such as the REST API. \[[#​21700](https://togithub.com/hazelcast/hazelcast/issues/21700)] ### [`v5.1.2`](https://togithub.com/hazelcast/hazelcast/releases/tag/v5.1.2) [Compare Source](https://togithub.com/hazelcast/hazelcast/compare/v5.1.1...v5.1.2) This document lists the new features, enhancements, fixed issues and, removed or deprecated features for Hazelcast 5.1.2 release. The numbers in the square brackets refer to the issues in Hazelcast's GitHub repositories. ##### Fixes - Fixed an issue where a cluster could not be formed when security is enabled, various client permissions are set, and multiple members are started simultaneously. \[[#​21510](https://togithub.com/hazelcast/hazelcast/issues/21510)] - Fixed an issue where a cluster was unresponsive when you perform a health check to see the members are in the safe state; cluster members were hanging in the `REPLICA_NOT_SYNC` state during such health checks. \[[#​21208](https://togithub.com/hazelcast/hazelcast/issues/21208)] - Fixed an issue where the list of members in the cluster was reset to an empty list when the UUID of a cluster changes after its restart: this was causing startup failures since Hazelcast could not manage the events due to the empty member list after a restart. \[[#​21178](https://togithub.com/hazelcast/hazelcast/issues/21178)] - Fixed an issue where the statistics like puts and removals were not increasing when these operations are executed through Transactional interface. \[[#​21107](https://togithub.com/hazelcast/hazelcast/issues/21107)] - Fixed a data race in `SingleProtocolEncoder`; while one method of this interface is called from the input thread, another one is called from the output thread which was causing the race. \[[#​20994](https://togithub.com/hazelcast/hazelcast/issues/20994)] - Fixed an issue where the automatic module name in `hazelcast-5.x.jar` could not be detected using Gradle. The reason was `/META-INF/MANIFEST.MF` not being the first or second entry in the JAR file; now this manifest file is the second entry. \[[#​20976](https://togithub.com/hazelcast/hazelcast/issues/20976)] ### [`v5.1.1`](https://togithub.com/hazelcast/hazelcast/releases/tag/v5.1.1) [Compare Source](https://togithub.com/hazelcast/hazelcast/compare/v5.1...v5.1.1) This document lists the new features, enhancements, fixed issues and, removed or deprecated features for Hazelcast Platform 5.1.1 release. The numbers in the square brackets refer to the issues in Hazelcast's GitHub repositories. ##### Fixes - Fixed an issue where the partition migrations were failing when there is a single map in the cluster with Merkle trees enabled. \[[#​20929](https://togithub.com/hazelcast/hazelcast/issues/20929)] - Fixed a potential deadlock during partition migrations and inability to make progress while performing graceful shutdown with persistence enabled. \[[#​20813](https://togithub.com/hazelcast/hazelcast/issues/20813)] ### [`v5.1`](https://togithub.com/hazelcast/hazelcast/releases/tag/v5.1) [Compare Source](https://togithub.com/hazelcast/hazelcast/compare/v5.0.5...v5.1) This document lists the new features, enhancements, fixed issues and, removed or deprecated features for Hazelcast Platform 5.1 release. The numbers in the square brackets refer to the issues in Hazelcast's GitHub repositories. ##### New Features - **Tiered Storage (BETA)**: Introduced the Tiered Storage feature which is an extension to Hazelcast Map assigning data to various types of storage media based on access patterns. It is an Hazelcast Enterprise feature and in BETA state. See https://docs.hazelcast.com/hazelcast/5.1/tiered-storage/overview. - **Persistence for Dynamic Configuration:** You can now reload the updates made in configuration dynamically (at runtime) after a cluster restart. See https://docs.hazelcast.com/hazelcast/5.1/configuration/dynamic-config. ##### Enhancements ##### SQL Engine - Added support of the following statements, operators, and functions: \*\* `CREATE VIEW` \*\* `DROP VIEW` \*\* `EXPLAIN` \*\* `CREATE INDEX` \*\* `UNION` \*\* `UNION ALL` \*\* `EXISTS` \*\* `NOT EXISTS` \*\* `RIGHT JOIN` \*\* Sub-queries and `VALUES()` execution in JOIN arguments \*\* `JSON_ARRAY`, `JSON_OBJECT` \*\* `SHOW VIEWS` \*\* Added support for stream aggregation (HOP and TUMBLE functions) \[[#​20413](https://togithub.com/hazelcast/hazelcast/issues/20413)], \[[#​20342](https://togithub.com/hazelcast/hazelcast/issues/20342)], \[[#​20268](https://togithub.com/hazelcast/hazelcast/issues/20268)], \[[#​20042](https://togithub.com/hazelcast/hazelcast/issues/20042)], \[[#​19894](https://togithub.com/hazelcast/hazelcast/issues/19894)], \[[#​19850](https://togithub.com/hazelcast/hazelcast/issues/19850)], \[[#​19810](https://togithub.com/hazelcast/hazelcast/issues/19810)], \[[#​19768](https://togithub.com/hazelcast/hazelcast/issues/19768)], \[[#​19742](https://togithub.com/hazelcast/hazelcast/issues/19742)], \[[#​19729](https://togithub.com/hazelcast/hazelcast/issues/19729)], \[[#​19650](https://togithub.com/hazelcast/hazelcast/issues/19650)], \[[#​19589](https://togithub.com/hazelcast/hazelcast/issues/19589)] - Added `JSON` as a supported type for the SQL engine with functions like `JSON_QUERY` and `JSON_VALUE`; they return a JSON object/array and a primitive value, respectively. For an overview of JSON in SQL, see https://docs.hazelcast.com/hazelcast/5.1/sql/working-with-json. \[[#​19303](https://togithub.com/hazelcast/hazelcast/issues/19303)] ##### Distribution - Hazelcast command line interface is now available within the Hazelcast distribution package; previously it needed to be installed separately. \[[#​20062](https://togithub.com/hazelcast/hazelcast/issues/20062)] ##### Cloud Discovery Plugins - Added `EndpointSlices` support for the Kubernetes discovery plugin; now the `EndpointSlices` API usage is default, and the old `Endpoints` API is not used as a fallback if `EndpointSlices` are not available. \[[#​19643](https://togithub.com/hazelcast/hazelcast/issues/19643)] ##### Serialization - Added zero-configuration support for the Java records in compact serialization. \[[#​20724](https://togithub.com/hazelcast/hazelcast/issues/20724)] - Updated the names of methods and fields in the Compact Serialization API to make them non-Java centric. \[[#​20257](https://togithub.com/hazelcast/hazelcast/issues/20257)] - Added the declarative configuration elements for Compact Serialization. \[[#​20016](https://togithub.com/hazelcast/hazelcast/issues/20016)] - Introduced the `FieldKind` class to get the field types for portable and compact serializations; previously it was `FieldType`. \[[#​19517](https://togithub.com/hazelcast/hazelcast/issues/19517)] ##### Data Structures - Added the support of `include-value` parameter for MultiMap item listeners; you can set it to `true` if you want the item event to contain the item values. \[[#​18815](https://togithub.com/hazelcast/hazelcast/issues/18815)] ##### Configuration - Added support of the `jar` scheme in the JCache URI configuration. Without this support, when, for example, `hazelcast-client.zip` is provided in Spring boot application properties file and packaged as a boot JAR, then the Hazelcast caching provider was failing to load the file. \[[#​20543](https://togithub.com/hazelcast/hazelcast/issues/20543)] - Introduced a system property for allowing you to audit that all the Hazelcast instances running in your environment have the instance tracking file name set correctly in the configuration. See the note in https://docs.hazelcast.com/hazelcast/5.1/maintain-cluster/monitoring#instance-tracking. \[[#​19928](https://togithub.com/hazelcast/hazelcast/issues/19928)] - Introduced the module integrity checker configuration property. Integrity checker is a component which verifies that the executable contains all the required `META-INF/services`. [https://github.com/hazelcast/hazelcast/pull/19971](https://togithub.com/hazelcast/hazelcast/pull/19971)9971\[[#​19971](https://togithub.com/hazelcast/hazelcast/issues/19971)] ##### Logging - Added support of customizing the logging pattern and specifying configuration files via environment variables. We also added support for `JsonTemplateLayout` for which the JSON template can be customized. \[[#​20528](https://togithub.com/hazelcast/hazelcast/issues/20528)] ##### Management Center - Added the `data-access-enabled` property for the Management Center configuration on the member side. This allows you to enable or disable the access of Management Center to the data stored by the data structures in the cluster. Management Center can't access the data if at least one member has the data access disabled. Its default value is `true` (enabled). \[[#​19991](https://togithub.com/hazelcast/hazelcast/issues/19991)] - Added the `console-enabled` property for the Management Center configuration on the member side. This allows you to disable the console feature on Management Center as it supports lots of operations and it's not subject to the regular access restrictions; it can read from/write to any data structure even if Management Center is restricted to access those via client permissions. \[[#​19718](https://togithub.com/hazelcast/hazelcast/issues/19718)] ##### Licensing - Added the ability to persist the renewal of a Hazelcast license key when this change is made without shutting down the cluster. Renewing a license key has already been possible using the REST API; https://docs.hazelcast.com/hazelcast/5.1/deploy/updating-license-rest. This enhancement makes such license renewals to be persisted so that when a member or the cluster is restarted, you will not need to re-update the license. \[[#​20446](https://togithub.com/hazelcast/hazelcast/issues/20446)] ##### Other Enhancements - Added `safe-serialization` property to protect `MulticastDiscoveryStrategy` against Java deserialization attacks. \[[#​20728](https://togithub.com/hazelcast/hazelcast/issues/20728)] - Upgraded the Elasticsearch client in Hazelcast's `elasticsearch-7` Jet engine connector. Since the client license was changed from Apache 2.0 to Elastic 2.0 in Elasticsearch 7.11, we also added the new https://github.com/hazelcast/hazelcast/blob/master/extensions/elasticsearch/elasticsearch-7/ELASTIC-LICENSE-README.md\[license] to explain the changes. \[[#​20427](https://togithub.com/hazelcast/hazelcast/issues/20427)] - Updated log4j2 dependency version to 2.17.1 in Hazelcast's root `pom.xml`. \[[#​20184](https://togithub.com/hazelcast/hazelcast/issues/20184)] - With the introduction of Tiered Storage feature, we've improved the partition migration system to support chunked partition migrations. By this way, the data is sent as a stream of chunks while the partitions are migrated upon member failures or new member additions. Previously, at most 250 MB was recommended as the maximum size for a partition; however, if a partition is backed by Tiered Storage, this size may go beyond this limit and may cause out of memory errors during the migrations of partitions having large data. Chunked partition migrations eliminate these errors. \[[#​20005](https://togithub.com/hazelcast/hazelcast/issues/20005)] - The `hz-start` script now accepts absolute paths when providing the Hazelcast configuration file's location. \[[#​19908](https://togithub.com/hazelcast/hazelcast/issues/19908)] - JSON strings can now work with paging predicate queries. \[[#​19880](https://togithub.com/hazelcast/hazelcast/issues/19880)] - You can now check if Hazelcast is started properly in the Docker environment simply by using a `curl` command, e.g., `curl -f http://hazelcast-host:5701/hazelcast/health/ready`. \[[#​19664](https://togithub.com/hazelcast/hazelcast/issues/19664)] - Hazelcast's memcached implementation was interpreting the number values and parameters for `incr` and `decr` wrongly (numbers were being converted into byte arrays instead of decimals). This has been fixed by making these commands' implementations strictly follow the memcached protocol specification. \[[#​19653](https://togithub.com/hazelcast/hazelcast/issues/19653)] - Since the name of Hot Restart Persistence feature changed to Persistence, the prefix for its metrics also has been changed from "hot-restart" to "persistence". \[[#​19543](https://togithub.com/hazelcast/hazelcast/issues/19543)] - Aligned the Near Cache and query cache behaviors when the in-memory format is `OBJECT`: \*\* Improved query cache methods to eliminate extra deserialization \*\* Added `serializeKeys` flag to query cache configuration to align the behavior with Near Cache. \[[#​20265](https://togithub.com/hazelcast/hazelcast/issues/20265)] - Improved the speed of connection by a member when it joins the cluster, by removing the unnecessary sleep statements in the code. \[[#​18932](https://togithub.com/hazelcast/hazelcast/issues/18932)] ##### Fixes - Fixed the `NullPointerException` issue when running the `SELECT` statement if there is a mapping for a map with partitioned indexes. \[[#​20601](https://togithub.com/hazelcast/hazelcast/issues/20601)] - Fixed an issue where a single SQL query having a mix of JSON string and `HazelcastJsonValue` for the `INSERT` statement was not working. \[[#​20303](https://togithub.com/hazelcast/hazelcast/issues/20303)] - Fixed various issues when using hostnames in Hazelcast's network and WAN Replication configurations. With this fix, you can seamlessly use hostnames wherever the IP addresses of the members are used. \[[#​20014](https://togithub.com/hazelcast/hazelcast/issues/20014)], \[[#​15722](https://togithub.com/hazelcast/hazelcast/issues/15722)] - Fixed an issue where the `hazelcast.yaml` file was ignored when it is the only configuration file present in the Hazelcast setup; during startup it was looking only for the `hazelcast.xml` file and producing an error message saying that the configuration does not exist even though there is the `yaml` configuration file. Now it automatically uses `hazelcast.yaml` when `hazelcast.xml` is not available. \[[#​20003](https://togithub.com/hazelcast/hazelcast/issues/20003)] - Fixed an issue where the Hazelcast command line interfaces commands were outputting incorrect command names when you want to see their usages using the `--help` argument. For example, the command `hz-start --help` was outputting the following: Usage: hazelcast-start \[-d] \-d, --daemon Starts Hazelcast in daemon mode instead of the following: Usage: hz-start \[-d] \-d, --daemon Starts Hazelcast in daemon mode - Fixed an issue where querying a map with `SELECT` (SQL) was failing when the data has compact serialization and the cluster has more than one member (with the class not being on the classpath). \[[#​19952](https://togithub.com/hazelcast/hazelcast/issues/19952)] - In Kubernetes environment, when the health check endpoint was taking too long to respond, the Hazelcast members were considered to be unresponsive and terminated; this issue has been fixed. \[[#​19829](https://togithub.com/hazelcast/hazelcast/issues/19829)] - Fixed an issue where the command `hz-stop --help` was not displaying the help but executing the `hz-stop` command. \[[#​19749](https://togithub.com/hazelcast/hazelcast/issues/19749)] - When you both enable the persistence and automatic removal of stale data in the configuration, member startup failures were occurring. This has been fixed by adding the `auto-remove-stale-data` element to the configuration schema. \[[#​19683](https://togithub.com/hazelcast/hazelcast/issues/19683)] - Fixed an issue where the `totalPublishes` statistics for the Reliable Topic data structure were always generated as `0`. \[[#​19642](https://togithub.com/hazelcast/hazelcast/issues/19642)] - Fixed an issue where some Spring XML configuration elements having values as property placeholders were not working when Hazelcast is upgraded to a newer version. \[[#​19629](https://togithub.com/hazelcast/hazelcast/issues/19629)] - Fixed an issue where the `totalPublishes` statistics for the Reliable Topic data structure were always generated as `0`. \[[#​19555](https://togithub.com/hazelcast/hazelcast/issues/19555)] - Fixed an issue where the serialization was failing when the object has enum fields, or it is an enum itself. \[[#​19314](https://togithub.com/hazelcast/hazelcast/issues/19314)] ##### Removed/Deprecated Features - Removed the `elasticsearch-5` module from Hazelcast distributions since the version 5.0 Elasticsearch has passed its end of life date; see its https://www.elastic.co/guide/en/elasticsearch/reference/5.0/release-notes-5.0.0.html\[release notes]. \[[#​20458](https://togithub.com/hazelcast/hazelcast/issues/20458)] - Deprecated the `log(LogEvent logEvent)` method in the `ILogger` class (`com.hazelcast.logging.ILogger`). ##### Contributors We would like to thank the contributors from our open source community who worked on this release: - [Lenny Primak](https://togithub.com/lprimak) - [Chelsea31](https://togithub.com/Chelsea31) - [Tomasz Gaweda](https://togithub.com/TomaszGaweda) - [Katha Patel](https://togithub.com/kathapatel) ### [`v5.0.5`](https://togithub.com/hazelcast/hazelcast/releases/tag/v5.0.5) [Compare Source](https://togithub.com/hazelcast/hazelcast/compare/v5.0.4...v5.0.5) This document lists the enhancements and fixed issues for Hazelcast Platform 5.0.5 release. The numbers in the square brackets refer to the issues in Hazelcast's GitHub repositories. ##### Enhancements - Updated the version of `jackson-core` dependency to `2.15.2`. \[[#​24733](https://togithub.com/hazelcast/hazelcast/issues/24733)] - Updated the versions of Snappy and Netty dependencies to `1.1.10.1` and `4.1.94.Final`, respectively. \[[#​24886](https://togithub.com/hazelcast/hazelcast/issues/24886)], \[[#​24864](https://togithub.com/hazelcast/hazelcast/issues/24864)] - Added support of IMDSv2 for Hazelcast’s AWS Discovery plugin. [https://github.com/hazelcast/hazelcast/pull/23606](https://togithub.com/hazelcast/hazelcast/pull/23606)3606\[[#​23606](https://togithub.com/hazelcast/hazelcast/issues/23606)] ##### Fixes - Fixed protocol handshake issues in the IO subsystem, including the `TLSv1.3` handshake. \[[#​24893](https://togithub.com/hazelcast/hazelcast/issues/24893)] - Fixed an issue where Hazelcast was sending empty map interceptor information to the members which are newly joined to the cluster; it was causing eager map initializations. \[[#​24667](https://togithub.com/hazelcast/hazelcast/issues/24667)] - Fixed an issue where `lastAccessTime` and `expirationTime` were not updated when an entry is accessed via `executeOnEntries`. \[[#​24010](https://togithub.com/hazelcast/hazelcast/issues/24010)] - Fixed a parsing issue in JSON arrays when using predicate queries; it was causing the JSON query results to be varied according to the property order. \[[#​23451](https://togithub.com/hazelcast/hazelcast/issues/23451)] ##### Contributors We would like to thank the contributors from our open source community who worked on this release: - [Aleksei Zotov](https://togithub.com/azotcsit) ### [`v5.0.4`](https://togithub.com/hazelcast/hazelcast/releases/tag/v5.0.4) [Compare Source](https://togithub.com/hazelcast/hazelcast/compare/v5.0.3...v5.0.4) This document lists the new features, enhancements, fixed issues and, removed or deprecated features for **Hazelcast Platform 5.0.4** releases. The numbers in the square brackets refer to the issues in Hazelcast's GitHub repositories. ##### Enhancements - You can now provide comma-separated lists to give multiple labels for the Kubernetes Discovery Plugin configurations service-label-name, service-label-value, pod-label-name, and pod-label-value. \[[#​22402](https://togithub.com/hazelcast/hazelcast/issues/22402)] - Improved connection handling. \[[#​21642](https://togithub.com/hazelcast/hazelcast/issues/21642)] - Upgraded the versions of Hadoop dependencies from 3.3.1 to 3.3.3. \[[#​21530](https://togithub.com/hazelcast/hazelcast/issues/21530)] ##### Fixes - Fixed an issue where replication over WAN was failing on the source cluster members, when there are multiple batch publishers configured in a single WAN replication. \[[#​22499](https://togithub.com/hazelcast/hazelcast/issues/22499)] - Fixed an issue where the cluster was failing to operate since the indexes on backup partitions were removed by `map.ClearBackupOperation`. \[[#​22423](https://togithub.com/hazelcast/hazelcast/issues/22423)] - Fixed an issue where metadata information such as TTL and maximum idle time were not being replicated via WAN replication. \[[#​22337](https://togithub.com/hazelcast/hazelcast/issues/22337)] - Fixed an issue where the list of members in the cluster was reset to an empty list when the UUID of a cluster changes after its restart: this was causing startup failures since Hazelcast could not manage the events due to the empty member list after a restart. \[[#​21179](https://togithub.com/hazelcast/hazelcast/issues/21179)] ### [`v5.0.3`](https://togithub.com/hazelcast/hazelcast/releases/tag/v5.0.3) [Compare Source](https://togithub.com/hazelcast/hazelcast/compare/v5.0.2...v5.0.3) This document lists the new features, enhancements, fixed issues and, removed or deprecated features for Hazelcast Platform 5.0.3 release. The numbers in the square brackets refer to the issues in Hazelcast's GitHub repositories. ##### Enhancements - Hazelcast command line interface is now available within the Hazelcast distribution package; previously it needed to be installed separately. \[[#​20812](https://togithub.com/hazelcast/hazelcast/issues/20812)] - Enabled XXE (XML External Entity Reference) protection for `XMLInputFactory`. The related issue was reported through the https://huntr.dev/bounties/d63972a2-b910-480a-a86b-d1f75d24d563/. \[[#​20941](https://togithub.com/hazelcast/hazelcast/issues/20941)] ##### Fixes - Fixed a data race in `SingleProtocolEncoder`; while one method of this interface is called from the input thread, another one is called from the output thread which was causing the race. \[[#​20993](https://togithub.com/hazelcast/hazelcast/issues/20993)] - Fixed a potential deadlock during partition migrations and inability to make progress while performing graceful shutdown with persistence enabled. \[[#​20884](https://togithub.com/hazelcast/hazelcast/issues/20884)] - Fixed an issue