From 189ac74a9b0275042e66814c29ef4fde89d3afa6 Mon Sep 17 00:00:00 2001 From: Sergey Chugunov Date: Thu, 19 Mar 2026 11:12:32 +0300 Subject: [PATCH 1/7] IGNITE-28264 Extract enum from message class, use serializer to encode and decode the enum --- .../cache/CacheEntryPredicateAdapter.java | 66 +++----------- .../cache/CacheEntryPredicateType.java | 27 ++++++ .../processors/cache/GridCacheContext.java | 6 +- .../processors/cache/GridCacheUtils.java | 4 +- ...CacheEntryPredicateAdapterMessageTest.java | 88 ------------------- .../testsuites/IgniteBasicTestSuite.java | 2 - 6 files changed, 45 insertions(+), 148 deletions(-) create mode 100644 modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateType.java delete mode 100644 modules/core/src/test/java/org/apache/ignite/internal/managers/communication/CacheEntryPredicateAdapterMessageTest.java diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java index c58bdba94008f..5e9022f0550b8 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java @@ -30,19 +30,13 @@ public class CacheEntryPredicateAdapter implements CacheEntryPredicate { /** */ private static final long serialVersionUID = 4647110502545358709L; - /** */ - public static final CacheEntryPredicateAdapter ALWAYS_FALSE = new CacheEntryPredicateAdapter(PredicateType.ALWAYS_FALSE); - /** */ protected transient boolean locked; /** */ @GridToStringInclude - private PredicateType type; - - /** Type value serialization holder. */ @Order(0) - protected transient byte code; + private CacheEntryPredicateType type; /** */ @GridToStringInclude @@ -51,11 +45,11 @@ public class CacheEntryPredicateAdapter implements CacheEntryPredicate { /** */ public CacheEntryPredicateAdapter() { - type = PredicateType.OTHER; + type = CacheEntryPredicateType.OTHER; } /** */ - public CacheEntryPredicateAdapter(PredicateType type) { + public CacheEntryPredicateAdapter(CacheEntryPredicateType type) { assert type != null; this.type = type; @@ -63,7 +57,7 @@ public CacheEntryPredicateAdapter(PredicateType type) { /** */ public CacheEntryPredicateAdapter(@Nullable CacheObject val) { - this.type = PredicateType.VALUE; + type = CacheEntryPredicateType.VALUE; this.val = val; } @@ -79,10 +73,15 @@ public CacheEntryPredicateAdapter(@Nullable CacheObject val) { } /** */ - public PredicateType type() { + public CacheEntryPredicateType type() { return type; } + /** */ + public void type(CacheEntryPredicateType type) { + this.type = type; + } + /** * @param entry Entry. * @return Value. @@ -132,13 +131,13 @@ public PredicateType type() { /** {@inheritDoc} */ @Override public void finishUnmarshal(GridCacheContext ctx, ClassLoader ldr) throws IgniteCheckedException { - if (type == PredicateType.VALUE) + if (type == CacheEntryPredicateType.VALUE) val.finishUnmarshal(ctx.cacheObjectContext(), ldr); } /** {@inheritDoc} */ @Override public void prepareMarshal(GridCacheContext ctx) throws IgniteCheckedException { - if (type == PredicateType.VALUE) + if (type == CacheEntryPredicateType.VALUE) val.prepareMarshal(ctx.cacheObjectContext()); } @@ -152,45 +151,4 @@ public void value(@Nullable CacheObject val) { this.val = val; } - /** */ - public byte code() { - assert type != null; - - switch (type) { - case OTHER: return 0; - case VALUE: return 1; - case HAS_VALUE: return 2; - case HAS_NO_VALUE: return 3; - case ALWAYS_FALSE: return 4; - } - - throw new IllegalArgumentException("Unknown cache entry predicate type: " + type); - } - - /** */ - public void code(byte code) { - switch (code) { - case 0: type = PredicateType.OTHER; break; - case 1: type = PredicateType.VALUE; break; - case 2: type = PredicateType.HAS_VALUE; break; - case 3: type = PredicateType.HAS_NO_VALUE; break; - case 4: type = PredicateType.ALWAYS_FALSE; break; - default: - throw new IllegalArgumentException("Unknown cache entry predicate type code: " + code); - } - } - - /** Common predicate type. */ - public enum PredicateType { - /** Other custom predicate. */ - OTHER, - /** Entry has certain equal value. */ - VALUE, - /** Entry has any value. */ - HAS_VALUE, - /** Entry has no value. */ - HAS_NO_VALUE, - /** Is always false. */ - ALWAYS_FALSE - } } diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateType.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateType.java new file mode 100644 index 0000000000000..7faee341b46dc --- /dev/null +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateType.java @@ -0,0 +1,27 @@ +package org.apache.ignite.internal.processors.cache; + +/** + * Common predicate type. + */ +public enum CacheEntryPredicateType { + /** + * Other custom predicate. + */ + OTHER, + /** + * Entry has certain equal value. + */ + VALUE, + /** + * Entry has any value. + */ + HAS_VALUE, + /** + * Entry has no value. + */ + HAS_NO_VALUE, + /** + * Is always false. + */ + ALWAYS_FALSE +} diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java index dd5c1f51296a5..cd51eb2287ba2 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java @@ -1206,7 +1206,7 @@ public boolean putIfAbsentFilter(@Nullable CacheEntryPredicate[] p) { for (CacheEntryPredicate p0 : p) { if ((p0 instanceof CacheEntryPredicateAdapter) && - ((CacheEntryPredicateAdapter)p0).type() == CacheEntryPredicateAdapter.PredicateType.HAS_NO_VALUE) + ((CacheEntryPredicateAdapter)p0).type() == CacheEntryPredicateType.HAS_NO_VALUE) return true; } @@ -1217,14 +1217,14 @@ public boolean putIfAbsentFilter(@Nullable CacheEntryPredicate[] p) { * @return No value filter. */ public CacheEntryPredicate noVal() { - return new CacheEntryPredicateAdapter(CacheEntryPredicateAdapter.PredicateType.HAS_NO_VALUE); + return new CacheEntryPredicateAdapter(CacheEntryPredicateType.HAS_NO_VALUE); } /** * @return Has value filter. */ public CacheEntryPredicate hasVal() { - return new CacheEntryPredicateAdapter(CacheEntryPredicateAdapter.PredicateType.HAS_VALUE); + return new CacheEntryPredicateAdapter(CacheEntryPredicateType.HAS_VALUE); } /** diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java index 4da8e1acd9171..eb9d212907933 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java @@ -244,7 +244,9 @@ public static boolean cheatCache(int id) { private static final CacheEntryPredicate[] EMPTY_FILTER0 = new CacheEntryPredicate[0]; /** */ - private static final CacheEntryPredicate[] ALWAYS_FALSE0_ARR = new CacheEntryPredicate[] {CacheEntryPredicateAdapter.ALWAYS_FALSE}; + private static final CacheEntryPredicate[] ALWAYS_FALSE0_ARR = new CacheEntryPredicate[] { + new CacheEntryPredicateAdapter(CacheEntryPredicateType.ALWAYS_FALSE) + }; /** Read filter. */ public static final IgnitePredicate READ_FILTER = new P1() { diff --git a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/CacheEntryPredicateAdapterMessageTest.java b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/CacheEntryPredicateAdapterMessageTest.java deleted file mode 100644 index 6697942a1dc63..0000000000000 --- a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/CacheEntryPredicateAdapterMessageTest.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.managers.communication; - -import org.apache.ignite.internal.processors.cache.CacheEntryPredicateAdapter; -import org.apache.ignite.internal.processors.cache.CacheObject; -import org.apache.ignite.internal.util.typedef.F; -import org.junit.Test; - -import static org.apache.ignite.testframework.GridTestUtils.assertThrowsWithCause; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertSame; -import static org.junit.Assert.assertTrue; - -/** */ -public class CacheEntryPredicateAdapterMessageTest { - /** */ - @Test - public void testCacheEntryPredicateAdapterCode() { - assertEquals(0, new CacheEntryPredicateAdapter().code()); - assertEquals(0, new CacheEntryPredicateAdapter(CacheEntryPredicateAdapter.PredicateType.OTHER).code()); - assertEquals(1, new CacheEntryPredicateAdapter(CacheEntryPredicateAdapter.PredicateType.VALUE).code()); - assertEquals(1, new CacheEntryPredicateAdapter((CacheObject)null).code()); - assertEquals(2, new CacheEntryPredicateAdapter(CacheEntryPredicateAdapter.PredicateType.HAS_VALUE).code()); - assertEquals(3, new CacheEntryPredicateAdapter(CacheEntryPredicateAdapter.PredicateType.HAS_NO_VALUE).code()); - assertEquals(4, new CacheEntryPredicateAdapter(CacheEntryPredicateAdapter.PredicateType.ALWAYS_FALSE).code()); - - for (CacheEntryPredicateAdapter.PredicateType t : CacheEntryPredicateAdapter.PredicateType.values()) { - assertTrue(new CacheEntryPredicateAdapter(t).code() >= 0); - assertTrue(new CacheEntryPredicateAdapter(t).code() < 5); - } - } - - /** */ - @Test - public void testCacheEntryPredicateAdapterFromCode() { - CacheEntryPredicateAdapter msg = new CacheEntryPredicateAdapter((CacheObject)null); - assertSame(CacheEntryPredicateAdapter.PredicateType.VALUE, msg.type()); - - msg.code((byte)0); - assertSame(CacheEntryPredicateAdapter.PredicateType.OTHER, msg.type()); - - msg.code((byte)1); - assertSame(CacheEntryPredicateAdapter.PredicateType.VALUE, msg.type()); - - msg.code((byte)2); - assertSame(CacheEntryPredicateAdapter.PredicateType.HAS_VALUE, msg.type()); - - msg.code((byte)3); - assertSame(CacheEntryPredicateAdapter.PredicateType.HAS_NO_VALUE, msg.type()); - - msg.code((byte)4); - assertSame(CacheEntryPredicateAdapter.PredicateType.ALWAYS_FALSE, msg.type()); - - Throwable t = assertThrowsWithCause(() -> msg.code((byte)5), IllegalArgumentException.class); - assertEquals("Unknown cache entry predicate type code: 5", t.getMessage()); - } - - /** */ - @Test - public void testConversionConsistency() { - for (CacheEntryPredicateAdapter.PredicateType t : F.concat(CacheEntryPredicateAdapter.PredicateType.values())) { - CacheEntryPredicateAdapter msg = new CacheEntryPredicateAdapter(t); - - assertEquals(t, msg.type()); - - CacheEntryPredicateAdapter newMsg = new CacheEntryPredicateAdapter(); - newMsg.code(msg.code()); - - assertEquals(msg.type(), newMsg.type()); - } - } -} diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBasicTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBasicTestSuite.java index 4bb13394dcf69..1286364459024 100644 --- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBasicTestSuite.java +++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBasicTestSuite.java @@ -38,7 +38,6 @@ import org.apache.ignite.internal.TransactionsMXBeanImplTest; import org.apache.ignite.internal.codegen.IgniteDataTransferObjectProcessorTest; import org.apache.ignite.internal.codegen.MessageProcessorTest; -import org.apache.ignite.internal.managers.communication.CacheEntryPredicateAdapterMessageTest; import org.apache.ignite.internal.managers.communication.DefaultEnumMapperTest; import org.apache.ignite.internal.managers.communication.ErrorMessageSelfTest; import org.apache.ignite.internal.managers.communication.IndexKeyTypeMessageTest; @@ -150,7 +149,6 @@ MessageProcessorTest.class, ErrorMessageSelfTest.class, - CacheEntryPredicateAdapterMessageTest.class, DefaultEnumMapperTest.class, IndexKeyTypeMessageTest.class, IgniteDataTransferObjectProcessorTest.class, From 9f3724112a2e73af259eff40c92f5b89677f6ca5 Mon Sep 17 00:00:00 2001 From: Sergey Chugunov Date: Thu, 19 Mar 2026 17:29:39 +0300 Subject: [PATCH 2/7] IGNITE-28264 Fix compilation error after merge --- .../internal/processors/cache/CacheEntryPredicateAdapter.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java index b6cabd6a07355..93e2d9cc0cf55 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java @@ -36,7 +36,7 @@ public class CacheEntryPredicateAdapter implements CacheEntryPredicate { /** */ @GridToStringInclude @Order(0) - private CacheEntryPredicateType type; + CacheEntryPredicateType type; /** */ @GridToStringInclude From 736ca8c1489c22ea67f56d1a63d2bf1e7d64b4e7 Mon Sep 17 00:00:00 2001 From: Sergey Chugunov Date: Thu, 19 Mar 2026 17:30:21 +0300 Subject: [PATCH 3/7] IGNITE-28264 Fix compilation error after merge --- .../java/org/apache/ignite/testsuites/IgniteBasicTestSuite.java | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBasicTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBasicTestSuite.java index fa8f662f04f2e..854fa66327481 100644 --- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBasicTestSuite.java +++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBasicTestSuite.java @@ -38,6 +38,7 @@ import org.apache.ignite.internal.TransactionsMXBeanImplTest; import org.apache.ignite.internal.codegen.IgniteDataTransferObjectProcessorTest; import org.apache.ignite.internal.codegen.MessageProcessorTest; +import org.apache.ignite.internal.managers.communication.CompressedMessageTest; import org.apache.ignite.internal.managers.communication.DefaultEnumMapperTest; import org.apache.ignite.internal.managers.communication.ErrorMessageSelfTest; import org.apache.ignite.internal.managers.communication.IndexKeyTypeMessageTest; From 810d147c6925bb22459ef6eb061e64bf98fcd58b Mon Sep 17 00:00:00 2001 From: Sergey Chugunov Date: Fri, 20 Mar 2026 10:27:14 +0300 Subject: [PATCH 4/7] IGNITE-28264 Add license header, improve javadocs --- .../cache/CacheEntryPredicateType.java | 37 ++++++++++++++----- 1 file changed, 27 insertions(+), 10 deletions(-) diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateType.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateType.java index 7faee341b46dc..d35f81a2522d1 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateType.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateType.java @@ -1,27 +1,44 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package org.apache.ignite.internal.processors.cache; /** - * Common predicate type. + * Type of {@link CacheEntryPredicateAdapter}. */ public enum CacheEntryPredicateType { /** - * Other custom predicate. - */ - OTHER, - /** - * Entry has certain equal value. + * Predicate that entry has specified value. */ VALUE, /** - * Entry has any value. + * Predicate that entry has any value. */ HAS_VALUE, /** - * Entry has no value. + * Predicate that entry has no value. */ HAS_NO_VALUE, /** - * Is always false. + * Predicate that is always {@code false}. + */ + ALWAYS_FALSE, + /** + * Any other predicate. */ - ALWAYS_FALSE + OTHER } From 3f71fc88013f8a0dde2164ff70fffed2bd36a407 Mon Sep 17 00:00:00 2001 From: Sergey Chugunov Date: Mon, 23 Mar 2026 17:35:27 +0300 Subject: [PATCH 5/7] IGNITE-28264 Fix compilation error after merge --- .../internal/managers/communication/GridIoMessageFactory.java | 3 --- .../internal/processors/cache/CacheEntryPredicateAdapter.java | 4 +--- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java index 978f4e0f584ad..1d8457a298d9c 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java @@ -71,8 +71,6 @@ import org.apache.ignite.internal.processors.authentication.UserManagementOperationFinishedMessageSerializer; import org.apache.ignite.internal.processors.cache.CacheEntryInfoCollection; import org.apache.ignite.internal.processors.cache.CacheEntryInfoCollectionSerializer; -import org.apache.ignite.internal.processors.cache.CacheEntryPredicateAdapter; -import org.apache.ignite.internal.processors.cache.CacheEntryPredicateAdapterMarshallableSerializer; import org.apache.ignite.internal.processors.cache.CacheEvictionEntry; import org.apache.ignite.internal.processors.cache.CacheEvictionEntrySerializer; import org.apache.ignite.internal.processors.cache.CacheInvokeDirectResult; @@ -501,7 +499,6 @@ public GridIoMessageFactory(Marshaller marsh, ClassLoader clsLdr) { factory.register((short)95, DataStreamerEntry::new, new DataStreamerEntrySerializer()); factory.register((short)96, CacheContinuousQueryEntry::new, new CacheContinuousQueryEntryMarshallableSerializer(marsh, clsLdr)); factory.register((short)97, CacheEvictionEntry::new, new CacheEvictionEntrySerializer()); - factory.register((short)98, CacheEntryPredicateAdapter::new, new CacheEntryPredicateAdapterMarshallableSerializer(marsh, clsLdr)); factory.register((short)100, IgniteTxEntry::new, new IgniteTxEntrySerializer()); factory.register((short)101, TxEntryValueHolder::new, new TxEntryValueHolderSerializer()); factory.register((short)102, CacheVersionedValue::new, new CacheVersionedValueSerializer()); diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java index 9d728d1b2cf6f..93e2d9cc0cf55 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java @@ -23,12 +23,10 @@ import org.apache.ignite.internal.Order; import org.apache.ignite.internal.util.tostring.GridToStringInclude; import org.apache.ignite.internal.util.typedef.internal.CU; -import org.apache.ignite.marshaller.Marshaller; -import org.apache.ignite.plugin.extensions.communication.MarshallableMessage; import org.jetbrains.annotations.Nullable; /** A unified container for common, typical cache entry predicates. */ -public class CacheEntryPredicateAdapter implements CacheEntryPredicate, MarshallableMessage { +public class CacheEntryPredicateAdapter implements CacheEntryPredicate { /** */ private static final long serialVersionUID = 4647110502545358709L; From 46e9dbe1be2c192055f1f1f2c066b476fa1f5342 Mon Sep 17 00:00:00 2001 From: Sergey Chugunov Date: Thu, 26 Mar 2026 10:34:13 +0300 Subject: [PATCH 6/7] IGNITE-28264 Fix logical error after merge --- .../internal/managers/communication/GridIoMessageFactory.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java index b78cf697cd82d..47d83a084dbff 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java @@ -69,6 +69,8 @@ import org.apache.ignite.internal.processors.authentication.UserManagementOperationFinishedMessageSerializer; import org.apache.ignite.internal.processors.cache.CacheEntryInfoCollection; import org.apache.ignite.internal.processors.cache.CacheEntryInfoCollectionSerializer; +import org.apache.ignite.internal.processors.cache.CacheEntryPredicateAdapter; +import org.apache.ignite.internal.processors.cache.CacheEntryPredicateAdapterSerializer; import org.apache.ignite.internal.processors.cache.CacheEvictionEntry; import org.apache.ignite.internal.processors.cache.CacheEvictionEntrySerializer; import org.apache.ignite.internal.processors.cache.CacheInvokeDirectResult; @@ -495,6 +497,7 @@ public GridIoMessageFactory(Marshaller marsh, ClassLoader clsLdr) { factory.register((short)95, DataStreamerEntry::new, new DataStreamerEntrySerializer()); factory.register((short)96, CacheContinuousQueryEntry::new, new CacheContinuousQueryEntryMarshallableSerializer(marsh, clsLdr)); factory.register((short)97, CacheEvictionEntry::new, new CacheEvictionEntrySerializer()); + factory.register((short)98, CacheEntryPredicateAdapter::new, new CacheEntryPredicateAdapterSerializer()); factory.register((short)100, IgniteTxEntry::new, new IgniteTxEntrySerializer()); factory.register((short)101, TxEntryValueHolder::new, new TxEntryValueHolderSerializer()); factory.register((short)102, CacheVersionedValue::new, new CacheVersionedValueSerializer()); From fee05a9c90504a95f39a006c3f8b25ad2405f60e Mon Sep 17 00:00:00 2001 From: Sergey Chugunov Date: Mon, 30 Mar 2026 17:58:44 +0300 Subject: [PATCH 7/7] IGNITE-28264 Address review comments --- .../cache/CacheEntryPredicateAdapter.java | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java index c4e97e4ac89c6..0c30dc615aa66 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java @@ -72,11 +72,6 @@ public CacheEntryPredicateType type() { return type; } - /** */ - public void type(CacheEntryPredicateType type) { - this.type = type; - } - /** * @param entry Entry. * @return Value. @@ -136,14 +131,4 @@ public void type(CacheEntryPredicateType type) { val.prepareMarshal(ctx.cacheObjectContext()); } - /** */ - public @Nullable CacheObject value() { - return val; - } - - /** */ - public void value(@Nullable CacheObject val) { - this.val = val; - } - }