COH-30158 Added Listener Key Count, Listener Filter Count and Listener Registration Count to report-cache-storage.xml.
COH-30148 Added support to allow the definition of custom executors for the remote executor service via XML configuration.
COH-30142 Added support for advanced task orchestration across multiple JVMs via the RemoteExecutor API.
COH-30058 Reduced memory allocation when creating a PartitionSet instance for a single partition, to improve memory profile of parallel queries against caches with high partition count.
COH-30039 The coherence-json module's POF configuration file is now auto discoverable when using POF serialization.
COH-29934 Added support for macro parameter expansion to <cdi:bean/> content expression
COH-29861 Added support for Java records to UniversalExtractor
COH-29791 Enhanced POF deserialization error messages to show the id of the field being deserialized.
COH-29784 Improved the cleanup process of persistence files to handle case when data is deleted followed by a period with no cache activity.
COH-29778 Added support for JDK 21 VirtualThread-per-task executors to the Coherence Executor Service.
COH-29691 Improved PortableTypeGenerator to report an error when a POF annotated field is declared as final.
COH-29676 Improved the process of loading management-http-config.xml so that the file can be overridden by placing another management-http-config.xml file in the classpath before coherence.jar.
COH-29598 Improved the process of loading management-config.xml so that the file can be overridden by placing another management-config.xml file in the classpath or module path before coherence.jar.
COH-30427 Fixed an issue where version compatibility checks could fail when parsing CE versions.
COH-30319 Fixed an issue where the Coherence health API could report ready before all services had started.
COH-30247 Fixed an issue where the coherence.distributed.partitioncount system property was not honored when using the default cache configuration.
COH-30209 Fixed an issue where rolling restart with persistence done concurrently by 2 or more nodes may result in the cache service going into the ORPHANED state and require a cluster restart.
COH-30178 Fixed an issue which could prevent tasks from being executed by RemoteExecutors.
COH-30157 Fixed an issue where the cluster service may be stopped in very rare circumstances due to an unhandled UnsupportedOperationException.
COH-30067 Fixed an issue where CacheMappingRegistry.register() or SchemeMappingRegistry.register() will throw a NullPointerException if the registry is not initialized.
COH-30023 Fixed an issue where, in certain cases, remote invocation using an ArrayFilter would use excessive CPU.
COH-30006 Fixed an issue where topic subscribers could become disconnected and hang attempting to reconnect. The fix for this issue means that when using topics is it not possible to perform a rolling upgrade from versions prior to 14.1.1-2206-4. If a rolling upgrade is required it must be done in two stages, first to a version 14.1.1-2206-4 or higher then to the 14.1.1-2206-9. This rolling upgrade restriction only affects applications that are using topics.
COH-29996 Fixed an issue where the expiry delay was ignored when calling put on a cache using the gRPC API with a Helidon 4 gRPC proxy server.
COH-29829 Updated Helidon to version 3.2.7.
COH-29822 Fixed an issue where XSD schema validation may fail in coherence-operational-config.xsd when using JDK 22 or greater and setting -Djdk.xml.jdkcatalog.resolve=strict.
COH-29808 Updated Netty to version 4.1.108.Final.
COH-26683 Fixed an issue where MessageBus would heartbeat at double the configured interval.
COH-24703 Removed an unnecessary stack trace that is logged when a member leaves a cluster.
COH-23555 Fixed an issue where near, view, and continuous query caches may contain stale data after snapshot recovery.
COH-30455 Fixed an issue where version compatibility checks could fail when parsing CE versions which could manifest as serialization compatibility exceptions when doing a rolling upgrade
Coherence CE 24.03
This is the Coherence CE v24.03 release.
Requirements:
Java 17 or higher
Some features will work only on Java 21 or higher
New Features in CE 24.03
Coherence CE 24.03 is now compatible with both Helidon 3.x and Helidon 4.x.
Fixed a bug in sublist iterators of immutable lists. Thanks to Barak
Ugav for finding and fixing this bug.
Implemented missing skip() and forEachRemaining() methods in array-based
containers.
Fixed a bug in array-based containers that would have thrown the wrong
exception and leave the iterator in an inconsistent state when removing
before iterating. Thanks to Michal Frajt for reporting this bug.
Entry.setValue() now works correctly in all iterators and iterator-like
methods of array-based maps. It was previously throwing an
UnsupportedOperationException.
New methods to obtain comparators from key extractors. Thanks to Barak
Ugav for implementing this feature.
This document lists the new features, enhancements, fixed issues and, removed or deprecated features for Hazelcast Platform 5.4.0 release. The numbers in the square brackets refer to the issues and pull requests in Hazelcast's GitHub repository.
[!CAUTION]
Starting with this release of Hazelcast Platform, the minimum supported Java version is 17.
New Features
EnterpriseUser Code Namespaces: Enable deployment and redeployment of your custom classes. See the User Code Namespaces documentation.
EnterpriseCPMap: Added CPMap as a minimal key-value CP data structure. See CPMap documentation. #25802
EnterpriseThread-Per-Core (TPC): TPC is now generally available. You can enable this feature on the clients and cluster members for improved performance. See the Thread-Per-Core (TPC) documentation.
Breaking Changes
The MergingValue interface within the SPI package now requires the getDeserializedValue() method to be defined within implementations, replacing the getValue() definition. #25942
Moved the MongoDB connector to the extensions module, that is, its classes and related dependencies relocated;
if you are using Maven to install the connector, you must add <classifier>jar-with-dependencies</classifier> to your pom.xml. Also removed the permissions for MongoDB connector. #25744, #25701
Method names used as parameters in SecurityInterceptor checks were reviewed and unified into a single place - class com.hazelcast.security.SecurityInterceptorConstants. Some client messages have the method name changed to reflect their purpose better. Some client messages are newly covered by SecurityInterceptor checks now. #25020
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. #24834, #24705, #24688
Fixed an issue where Hazelcast was not failing fast when a member is started with a blank public address. This has been fixed by introducing a configuration validation that might break any existing, but invalid, configuration. #24729
Enhancements
SQL/Jet Engine
Removed the beta annotations from the data connection classes. #26000
Replaced the user-defined types (UDTs) feature flag with the cyclic UDT feature flag, to prevent querying such type data. #25977
Added support for loading and storing a single column as the value using the GenericMapStore. #25878
Each Jet engine job was creating a client for connecting to the remote cluster, resulting in an excessive number of clients. This has been fixed by introducing a single data connection, which can be reused for all job instances. #25754, #25731
Added support for resolving fields from Avro schemas in Kafka mappings. #25935
Changed the exception type from CancellationException to CancellationByUserException when the user cancels a job before it is initialized. #25383
Added nested field support for Avro serialization format. #25269
Removed the redundant sort and merge operations in sorted index scans, for the computations where the index order is not needed, for example, aggregations. #25180
Updated the data comparator to improve the performance of sorted index operations. #25196
Added support for partition pruning for the __key filters. #25105
Added support for partitioned edges in Jet engine's partition pruning. #25062
Added a new mechanism to compute the required partitions to be scanned, if attribute partitioning strategy is applied. #25006
Added the condition type to the EXPLAIN PLAN statement outputs for all physical joins. #24899
Added support for nullable types when reading Avro files. #24840
Added the ability to pass parameters for JDBC configuration, such as the fetch size for large tables. #24835
Added support for partition pruning for SQL queries that have trivial filter predicates. #24813
Reflected the change of javax.jms to jakarta.jms in Hazelcast distributions. #24804
Added support for member pruning for Platform jobs to optimize a job's performance by picking up only the members required for the job. #24689
Added the stream() method to the SQL service to return the stream of result rows. #24525
Introduced a new configuration object to control the exact initial partition offsets when consuming records from Kafka via the Jet engine. #21546
Aligned the behavior of hashCode() method of KeyedWindowResult with that of Map.Entry. #697
The new Apex rule AvoidNonRestrictiveQueries finds SOQL and SOSL queries without a where
or limit statement. This can quickly cause governor limit exceptions.
Changed rules
ClassNamingConventions (Apex Codestyle): Two new properties to configure different patterns
for inner classes and interfaces: innerClassPattern and innerInterfacePattern.
Renamed rules
InaccurateNumericLiteral (JavaScript Error Prone) has been renamed from InnaccurateNumericLiteral.
The old rule name still works but is deprecated.
🐛 Fixed Issues
apex
#5094: [apex] "No adapter exists for type" error message printed to stdout instead of stderr
apex-bestpractices
#5095: [apex] ApexUnitTestShouldNotUseSeeAllDataTrue false negative due to casing (regression in PMD 7)
apex-codestyle
#4800: [apex] ClassNamingConvention: Support naming convention for inner classes
apex-performance
#635: [apex] New Rule: Avoid soql/sosl queries without a where clause or limit statement
java-bestpractices
#5106: [java] AccessorClassGeneration: Node was null for default constructor
#5110: [java] UnusedPrivateMethod for method referenced by lombok.Builder.ObtainVia
#5117: [java] UnusedPrivateMeth...
_Description has been truncated_
Bumps the gradle-dependencies group with 15 updates:
3.17.5
3.17.6
22.06.2
24.03.1
8.5.13
8.5.14
1.22.0
1.23.0
6.0.0
7.0.0
5.3.7
5.5.0
5.11.0-M2
5.11.0-RC1
5.11.0-M2
5.11.0-RC1
5.11.0-M2
5.11.0-RC1
0.11.0
0.11.1
7.3.0
7.4.0
7.3.0
7.4.0
7.3.0
7.4.0
4.27.2
4.27.3
1.9
1.10
Updates
com.gradle.develocity
from 3.17.5 to 3.17.6Updates
com.oracle.coherence.ce:coherence
from 22.06.2 to 24.03.1Release notes
Sourced from com.oracle.coherence.ce:coherence's releases.
... (truncated)
Commits
c0b570a
release: update poms to version 24.03.173ac0cc
Bug 36796618 - [36776743->24.03.1] Fix stream corruption error on rolling upg...d074bfd
Bug 36796618 - [36776743->24.03.1] Fix stream corruption error on rolling upg...cf8a3c2
Harden TopicChannelCountRecoveryTests0a2afbc
Harden TopicChannelCountRecoveryTestse71e5ac
Bug 36679025 - Build: update ManagementStartupModeTests.testConfigurationOver...da72ad0
Bug 36800725 - [36774493->24.03.1] Topics: New channels are not assigned to a...148af52
Revert CL# 109787ed45a05
Enh 36705531 - Add a method to Coherence queue that adds an element and retur...889d0ad
Bug 36796618 - [36776743->24.03.2] - fix VersionHelper to correctly parse sho...Updates
it.unimi.dsi:fastutil-core
from 8.5.13 to 8.5.14Changelog
Sourced from it.unimi.dsi:fastutil-core's changelog.
Commits
Updates
com.google.googlejavaformat:google-java-format
from 1.22.0 to 1.23.0Release notes
Sourced from com.google.googlejavaformat:google-java-format's releases.
Commits
f1f6874
Release google-java-format 1.23.0de57db5
Add customization for google-java-format arguments1296f1d
Use JSpecify 1.0!f7543b2
Adjust line comment indentation inside statement switches3affd63
Adjust indentation of line comments inside expression switches7fd9300
Fix modifier order handling fornon-sealed
db08589
Automatic code cleanup.0b384e3
Prepare g-j-f for some internal javac API changesb9b6730
Handle classes with no members and semi-colonsbec248b
Add a test for trailing unicode escaped whitespace in text blocksUpdates
com.google.inject:guice
from 6.0.0 to 7.0.0Release notes
Sourced from com.google.inject:guice's releases.
Commits
b0e1d0f
set 7.0.0 release #s.f4a66b7
Make error_prone_annotations dependency optional654032a
Internal change.bee813b
Improve MissingImplementationError to lazily calculate suggestions and standa...2d64067
Use linked bindings for MapBinder/Multibinder/OptionalBinder aliases, instead...be0141c
Internal change40a5bcf
Avoid re-initializing factories that are already initialized. This is necessa...9ac4767
Change the way we reference what 6.0 supports in the README, so it doesn't ge...24324ca
Prepare for the Guice 6.0 & 7.0 releases. This change does the following:49b1a33
Remove redundant references to javax.{inject,persistence,servlet} and replace...Updates
com.hazelcast:hazelcast
from 5.3.7 to 5.5.0Release notes
Sourced from com.hazelcast:hazelcast's releases.
... (truncated)
Commits
e6ef7a8
Upgrade version to 5.5.0da56201
Fixdistribution.zip
'slicenses/attribution.txt
generation [5.5.0] [REL-2...7f1e932
Resolve issues preventing Hazelcast v5.5.0 build [5.5.0] (#2760)34796ee
Update release_notes.txt [REL-246][5.5.0] (#2751)f8bd2b8
Relocate all Jackson classes (#2679)c205c0a
Fix stale connections in niche MULTI_MEMBER routing [CORE-150] [5.5.0] (#2696)89ed72d
Update hazelcast-hibernate5.3 to 5.2.0 [5.5.0] (#2634)0871884
Remove deprecated ExpectedException.none() from map test (#2626)03e47d7
Fix sonar warnings in tests (#2625)22c1a70
Client connectivity logging fixes [HZ-4807] (#2615)Updates
org.junit.jupiter:junit-jupiter
from 5.11.0-M2 to 5.11.0-RC1Release notes
Sourced from org.junit.jupiter:junit-jupiter's releases.
Commits
eae096e
Release 5.11.0-RC1eb5516e
Finalize release notese5f9509
Validate KitchenSinkExtension for completeness2cdd597
Let@TempDir
fail fast ifcreateTempDirectory
does not return a directory...b693945
Use current context and registry when instantiating ExecutableInvoker8e067d3
Bump com.gradle.develocity from 3.17.5 to 3.17.6a4c3408
Introduce BeforeSuite and AfterSuite annotations for Suite classesf8a65af
Process extensions registered on non-static fields earlier (#3895)adf6d43
Log all discovered configuration files to assist in problem resolution0ca1754
Document best practices for implementing ParameterResolvers (#3829)Updates
org.junit:junit-bom
from 5.11.0-M2 to 5.11.0-RC1Release notes
Sourced from org.junit:junit-bom's releases.
Commits
eae096e
Release 5.11.0-RC1eb5516e
Finalize release notese5f9509
Validate KitchenSinkExtension for completeness2cdd597
Let@TempDir
fail fast ifcreateTempDirectory
does not return a directory...b693945
Use current context and registry when instantiating ExecutableInvoker8e067d3
Bump com.gradle.develocity from 3.17.5 to 3.17.6a4c3408
Introduce BeforeSuite and AfterSuite annotations for Suite classesf8a65af
Process extensions registered on non-static fields earlier (#3895)adf6d43
Log all discovered configuration files to assist in problem resolution0ca1754
Document best practices for implementing ParameterResolvers (#3829)Updates
org.junit.vintage:junit-vintage-engine
from 5.11.0-M2 to 5.11.0-RC1Release notes
Sourced from org.junit.vintage:junit-vintage-engine's releases.
Commits
eae096e
Release 5.11.0-RC1eb5516e
Finalize release notese5f9509
Validate KitchenSinkExtension for completeness2cdd597
Let@TempDir
fail fast ifcreateTempDirectory
does not return a directory...b693945
Use current context and registry when instantiating ExecutableInvoker8e067d3
Bump com.gradle.develocity from 3.17.5 to 3.17.6a4c3408
Introduce BeforeSuite and AfterSuite annotations for Suite classesf8a65af
Process extensions registered on non-static fields earlier (#3895)adf6d43
Log all discovered configuration files to assist in problem resolution0ca1754
Document best practices for implementing ParameterResolvers (#3829)Updates
org.junit:junit-bom
from 5.11.0-M2 to 5.11.0-RC1Release notes
Sourced from org.junit:junit-bom's releases.
Commits
eae096e
Release 5.11.0-RC1eb5516e
Finalize release notese5f9509
Validate KitchenSinkExtension for completeness2cdd597
Let@TempDir
fail fast ifcreateTempDirectory
does not return a directory...b693945
Use current context and registry when instantiating ExecutableInvoker8e067d3
Bump com.gradle.develocity from 3.17.5 to 3.17.6a4c3408
Introduce BeforeSuite and AfterSuite annotations for Suite classesf8a65af
Process extensions registered on non-static fields earlier (#3895)adf6d43
Log all discovered configuration files to assist in problem resolution0ca1754
Document best practices for implementing ParameterResolvers (#3829)Updates
org.junit.vintage:junit-vintage-engine
from 5.11.0-M2 to 5.11.0-RC1Release notes
Sourced from org.junit.vintage:junit-vintage-engine's releases.
Commits
eae096e
Release 5.11.0-RC1eb5516e
Finalize release notese5f9509
Validate KitchenSinkExtension for completeness2cdd597
Let@TempDir
fail fast ifcreateTempDirectory
does not return a directory...b693945
Use current context and registry when instantiating ExecutableInvoker8e067d3
Bump com.gradle.develocity from 3.17.5 to 3.17.6a4c3408
Introduce BeforeSuite and AfterSuite annotations for Suite classesf8a65af
Process extensions registered on non-static fields earlier (#3895)adf6d43
Log all discovered configuration files to assist in problem resolution0ca1754
Document best practices for implementing ParameterResolvers (#3829)Updates
com.uber.nullaway:nullaway
from 0.11.0 to 0.11.1Release notes
Sourced from com.uber.nullaway:nullaway's releases.
Changelog
Sourced from com.uber.nullaway:nullaway's changelog.
Commits
efdb762
Prepare for release 0.11.1.882ec59
Fix issue 1008 (#1009)5584291
JSpecify: read upper bound annotations from bytecode and add tests (#1004)43bbb79
Fix crash with suggested suppressions in JSpecify mode (#1001)e0718a8
Update to WALA 1.6.6 (#1003)95478ae
Update to JSpecify 1.0 and use JSpecify annotations in NullAway code (#1000)655159f
Expose@EnsuresNonNull
and@RequiresNonNull
in annotations package (#999)01651e4
Update to Gradle 8.9 (#998)ac72b68
Don't report initializer warnings on@NullUnmarked
constructors / methods (#997)40576b7
Strip annotations from MethodSymbol strings (#993)Updates
net.sourceforge.pmd:pmd
from 7.3.0 to 7.4.0Release notes
Sourced from net.sourceforge.pmd:pmd's releases.