Hazelcast IMDG Standard Support has expired. Extended support for version 4.1 ends in April 2024. Extended support for version 4.2 ends in September 2024.

We recommend that you try Hazelcast Platform.

In Hazelcast Platform, we’ve combined the in-memory storage of IMDG with the stream processing power of Jet. Find out more in our Platform documentation.

The following topics are a good place to start:

Overriding the Built-in Serializers

As mentioned in the previous page, you cannot override the built-in serializers by default. Yet, you can use allowOverrideDefaultSerializers when using programmatic configuration or allow-override-default-serializers when using the declarative one to specify whether the built-in serializers will be overridden:

  • XML

  • YAML

  • Java

<hazelcast>
    <serialization>
        <allow-override-default-serializers>true</allow-override-default-serializers>
    </serialization>
</hazelcast>
hazelcast:
    serialization:
        allow-override-default-serializers: true
SerializationConfig{
  boolean isAllowOverrideDefaultSerializers();

  SerializationConfig setAllowOverrideDefaultSerializers(final boolean allowOverrideDefaultSerializers);}

You should use this configuration cautiously. Built-in serializers are used heavily by the Hazelcast internally. If any of the instances in a cluster overrides a built-in serializer, all the members and clients in that cluster must override it with the same serializer. This configuration is specifically for the following cases:

  • You implement a a custom serialization configuration by the user for a type

  • Hazelcast adds a built-in serializer for the same type in a future release.

To be able to support rolling upgrade from an old version, you need to make sure of the backward compatibility of the serialization. As a solution, you can set this property on the new version so that the new instances can override the new built-in serializers with their existing custom ones.