This is an automated email from the ASF dual-hosted git repository.
namelchev pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git
The following commit(s) were added to refs/heads/master by this push:
new 23990acbd7c IGNITE-28263 Remove IndexKeyTypeMessage (#12934)
23990acbd7c is described below
commit 23990acbd7caf2697ea6bcb9e740f691b1905f38
Author: Dmitry Werner <[email protected]>
AuthorDate: Wed Mar 25 20:44:10 2026 +0500
IGNITE-28263 Remove IndexKeyTypeMessage (#12934)
---
.../cache/query/index/IndexKeyTypeMessage.java | 109 ---------
.../query/index/sorted/IndexKeyDefinition.java | 9 +-
.../communication/GridIoMessageFactory.java | 4 -
.../communication/IndexKeyTypeMessageTest.java | 268 ---------------------
.../ignite/testsuites/IgniteBasicTestSuite.java | 2 -
5 files changed, 4 insertions(+), 388 deletions(-)
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/cache/query/index/IndexKeyTypeMessage.java
b/modules/core/src/main/java/org/apache/ignite/internal/cache/query/index/IndexKeyTypeMessage.java
deleted file mode 100644
index b21289fcc04..00000000000
---
a/modules/core/src/main/java/org/apache/ignite/internal/cache/query/index/IndexKeyTypeMessage.java
+++ /dev/null
@@ -1,109 +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.cache.query.index;
-
-import org.apache.ignite.IgniteCheckedException;
-import org.apache.ignite.internal.Order;
-import org.apache.ignite.internal.cache.query.index.sorted.IndexKeyType;
-import org.apache.ignite.internal.managers.communication.GridIoMessageFactory;
-import org.apache.ignite.marshaller.Marshaller;
-import org.apache.ignite.plugin.extensions.communication.MarshallableMessage;
-import org.jetbrains.annotations.Nullable;
-
-/** Message wrapper for {@link IndexKeyType}. */
-public class IndexKeyTypeMessage implements MarshallableMessage {
- /** Type code. */
- public static final short TYPE_CODE = 516;
-
- /** */
- public static final byte NULL_VALUE_CODE = Byte.MIN_VALUE;
-
- /** Index key type. */
- private @Nullable IndexKeyType val;
-
- /** Code. */
- @Order(0)
- byte code;
-
- /** Empty constructor for {@link GridIoMessageFactory}. */
- public IndexKeyTypeMessage() {
- // No-op.
- }
-
- /** Constructor. */
- public IndexKeyTypeMessage(@Nullable IndexKeyType keyType) {
- val = keyType;
- code = encode(keyType);
- }
-
- /** Constructor. */
- public IndexKeyTypeMessage(int keyTypeCode) {
- code = (byte)keyTypeCode;
- val = decode(code);
- }
-
- /** @return Code. */
- public byte code() {
- return code;
- }
-
- /**
- * @param code New code.
- */
- public void code(byte code) {
- this.code = code;
- }
-
- /** @return Index key type. */
- public @Nullable IndexKeyType value() {
- return val;
- }
-
- /** @param keyType Index key type. */
- private static byte encode(@Nullable IndexKeyType keyType) {
- if (keyType == null)
- return NULL_VALUE_CODE;
-
- return (byte)keyType.code();
- }
-
- /**
- * @param code Code to decode an inde key type.
- */
- private static @Nullable IndexKeyType decode(byte code) {
- if (code == NULL_VALUE_CODE)
- return null;
-
- return IndexKeyType.forCode(code);
- }
-
- /** {@inheritDoc} */
- @Override public short directType() {
- return TYPE_CODE;
- }
-
- /** {@inheritDoc} */
- @Override public void prepareMarshal(Marshaller marsh) throws
IgniteCheckedException {
- code = encode(val);
- }
-
- /** {@inheritDoc} */
- @Override public void finishUnmarshal(Marshaller marsh, ClassLoader
clsLdr) throws IgniteCheckedException {
- val = decode(code);
- }
-}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/cache/query/index/sorted/IndexKeyDefinition.java
b/modules/core/src/main/java/org/apache/ignite/internal/cache/query/index/sorted/IndexKeyDefinition.java
index c99b1c99d70..0b0d1a0df64 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/cache/query/index/sorted/IndexKeyDefinition.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/cache/query/index/sorted/IndexKeyDefinition.java
@@ -18,16 +18,15 @@
package org.apache.ignite.internal.cache.query.index.sorted;
import org.apache.ignite.internal.Order;
-import org.apache.ignite.internal.cache.query.index.IndexKeyTypeMessage;
import org.apache.ignite.plugin.extensions.communication.Message;
/**
* Defines a signle index key.
*/
public class IndexKeyDefinition implements Message {
- /** A message for {@link IndexKeyType}. */
+ /** Index key type. */
@Order(0)
- IndexKeyTypeMessage idxTypeMsg;
+ IndexKeyType idxType;
/** Order. */
@Order(1)
@@ -44,7 +43,7 @@ public class IndexKeyDefinition implements Message {
/** */
public IndexKeyDefinition(int idxTypeCode, long precision, boolean asc) {
- idxTypeMsg = new IndexKeyTypeMessage(idxTypeCode);
+ idxType = IndexKeyType.forCode(idxTypeCode);
this.asc = asc;
@@ -67,7 +66,7 @@ public class IndexKeyDefinition implements Message {
/** */
public IndexKeyType indexKeyType() {
- return idxTypeMsg.value();
+ return idxType;
}
/** */
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 978f4e0f584..fabc60b48ab 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
@@ -41,8 +41,6 @@ import org.apache.ignite.internal.TxEntriesInfo;
import org.apache.ignite.internal.TxEntriesInfoSerializer;
import org.apache.ignite.internal.TxInfo;
import org.apache.ignite.internal.TxInfoSerializer;
-import org.apache.ignite.internal.cache.query.index.IndexKeyTypeMessage;
-import
org.apache.ignite.internal.cache.query.index.IndexKeyTypeMessageMarshallableSerializer;
import org.apache.ignite.internal.cache.query.index.IndexQueryResultMeta;
import
org.apache.ignite.internal.cache.query.index.IndexQueryResultMetaSerializer;
import org.apache.ignite.internal.cache.query.index.sorted.IndexKeyDefinition;
@@ -587,8 +585,6 @@ public class GridIoMessageFactory implements
MessageFactoryProvider {
factory.register(IgniteDhtPartitionsToReloadMap.TYPE_CODE,
IgniteDhtPartitionsToReloadMap::new,
new IgniteDhtPartitionsToReloadMapSerializer());
factory.register(IntLongMap.TYPE_CODE, IntLongMap::new, new
IntLongMapSerializer());
- factory.register(IndexKeyTypeMessage.TYPE_CODE,
IndexKeyTypeMessage::new,
- new IndexKeyTypeMessageMarshallableSerializer(marsh, clsLdr));
factory.register(GridPartitionStateMap.TYPE_CODE,
GridPartitionStateMap::new, new GridPartitionStateMapSerializer());
factory.register(GridDhtPartitionMap.TYPE_CODE,
GridDhtPartitionMap::new, new GridDhtPartitionMapSerializer());
factory.register(GridDhtPartitionFullMap.TYPE_CODE,
GridDhtPartitionFullMap::new, new GridDhtPartitionFullMapSerializer());
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/IndexKeyTypeMessageTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/IndexKeyTypeMessageTest.java
deleted file mode 100644
index 4264d2772f8..00000000000
---
a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/IndexKeyTypeMessageTest.java
+++ /dev/null
@@ -1,268 +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.IgniteCheckedException;
-import org.apache.ignite.internal.cache.query.index.IndexKeyTypeMessage;
-import org.apache.ignite.internal.cache.query.index.sorted.IndexKeyType;
-import org.apache.ignite.internal.util.typedef.F;
-import org.apache.ignite.internal.util.typedef.internal.U;
-import org.junit.Test;
-
-import static org.apache.ignite.marshaller.Marshallers.jdk;
-import static
org.apache.ignite.testframework.GridTestUtils.assertThrowsWithCause;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertSame;
-import static org.junit.Assert.assertTrue;
-
-/** */
-public class IndexKeyTypeMessageTest {
- /** */
- @Test
- public void testIndexKeyTypeCode() {
- assertEquals(Byte.MIN_VALUE, prepare(new IndexKeyTypeMessage(null)));
- assertEquals(-1, prepare(new
IndexKeyTypeMessage(IndexKeyType.UNKNOWN)));
- assertEquals(0, prepare(new IndexKeyTypeMessage(IndexKeyType.NULL)));
- assertEquals(1, prepare(new
IndexKeyTypeMessage(IndexKeyType.BOOLEAN)));
- assertEquals(2, prepare(new IndexKeyTypeMessage(IndexKeyType.BYTE)));
- assertEquals(3, prepare(new IndexKeyTypeMessage(IndexKeyType.SHORT)));
- assertEquals(4, prepare(new IndexKeyTypeMessage(IndexKeyType.INT)));
- assertEquals(5, prepare(new IndexKeyTypeMessage(IndexKeyType.LONG)));
- assertEquals(6, prepare(new
IndexKeyTypeMessage(IndexKeyType.DECIMAL)));
- assertEquals(7, prepare(new IndexKeyTypeMessage(IndexKeyType.DOUBLE)));
- assertEquals(8, prepare(new IndexKeyTypeMessage(IndexKeyType.FLOAT)));
- assertEquals(9, prepare(new IndexKeyTypeMessage(IndexKeyType.TIME)));
- assertEquals(10, prepare(new IndexKeyTypeMessage(IndexKeyType.DATE)));
- assertEquals(11, prepare(new
IndexKeyTypeMessage(IndexKeyType.TIMESTAMP)));
- assertEquals(12, prepare(new IndexKeyTypeMessage(IndexKeyType.BYTES)));
- assertEquals(13, prepare(new
IndexKeyTypeMessage(IndexKeyType.STRING)));
- assertEquals(14, prepare(new
IndexKeyTypeMessage(IndexKeyType.STRING_IGNORECASE)));
- assertEquals(15, prepare(new IndexKeyTypeMessage(IndexKeyType.BLOB)));
- assertEquals(16, prepare(new IndexKeyTypeMessage(IndexKeyType.CLOB)));
- assertEquals(17, prepare(new IndexKeyTypeMessage(IndexKeyType.ARRAY)));
- assertEquals(18, prepare(new
IndexKeyTypeMessage(IndexKeyType.RESULT_SET)));
- assertEquals(19, prepare(new
IndexKeyTypeMessage(IndexKeyType.JAVA_OBJECT)));
- assertEquals(20, prepare(new IndexKeyTypeMessage(IndexKeyType.UUID)));
- assertEquals(21, prepare(new
IndexKeyTypeMessage(IndexKeyType.STRING_FIXED)));
- assertEquals(22, prepare(new
IndexKeyTypeMessage(IndexKeyType.GEOMETRY)));
- assertEquals(24, prepare(new
IndexKeyTypeMessage(IndexKeyType.TIMESTAMP_TZ)));
- assertEquals(25, prepare(new IndexKeyTypeMessage(IndexKeyType.ENUM)));
-
- for (IndexKeyType keyType : IndexKeyType.values())
- assertTrue(prepare(new IndexKeyTypeMessage(keyType)) !=
IndexKeyTypeMessage.NULL_VALUE_CODE);
- }
-
- /** */
- byte prepare(IndexKeyTypeMessage msg) {
- try {
- msg.prepareMarshal(jdk());
- }
- catch (IgniteCheckedException e) {
- throw new RuntimeException(e);
- }
-
- return msg.code();
- }
-
- /** */
- @Test
- public void testIndexKeyTypeFromCode() throws IgniteCheckedException {
- IndexKeyTypeMessage msg = new IndexKeyTypeMessage(null);
-
- msg.code(IndexKeyTypeMessage.NULL_VALUE_CODE);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertNull(msg.value());
-
- msg.code((byte)-1);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.UNKNOWN, msg.value());
-
- msg.code((byte)0);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.NULL, msg.value());
-
- msg.code((byte)1);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.BOOLEAN, msg.value());
-
- msg.code((byte)2);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.BYTE, msg.value());
-
- msg.code((byte)3);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.SHORT, msg.value());
-
- msg.code((byte)4);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.INT, msg.value());
-
- msg.code((byte)5);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.LONG, msg.value());
-
- msg.code((byte)6);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.DECIMAL, msg.value());
-
- msg.code((byte)7);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.DOUBLE, msg.value());
-
- msg.code((byte)8);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.FLOAT, msg.value());
-
- msg.code((byte)9);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.TIME, msg.value());
-
- msg.code((byte)10);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.DATE, msg.value());
-
- msg.code((byte)11);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.TIMESTAMP, msg.value());
-
- msg.code((byte)12);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.BYTES, msg.value());
-
- msg.code((byte)13);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.STRING, msg.value());
-
- msg.code((byte)14);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.STRING_IGNORECASE, msg.value());
-
- msg.code((byte)15);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.BLOB, msg.value());
-
- msg.code((byte)16);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.CLOB, msg.value());
-
- msg.code((byte)17);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.ARRAY, msg.value());
-
- msg.code((byte)18);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.RESULT_SET, msg.value());
-
- msg.code((byte)19);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.JAVA_OBJECT, msg.value());
-
- msg.code((byte)20);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.UUID, msg.value());
-
- msg.code((byte)21);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.STRING_FIXED, msg.value());
-
- msg.code((byte)22);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.GEOMETRY, msg.value());
-
- msg.code((byte)24);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.TIMESTAMP_TZ, msg.value());
-
- msg.code((byte)25);
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- assertSame(IndexKeyType.ENUM, msg.value());
-
- Throwable t = assertThrowsWithCause(
- () -> {
- msg.code((byte)23);
-
- try {
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- }
- catch (IgniteCheckedException e) {
- throw new RuntimeException(e);
- }
- },
- IllegalArgumentException.class);
-
- assertEquals("Unknown index key type code: " + 23, t.getMessage());
-
- for (byte c = 26; c >= 26 && c <= Byte.MAX_VALUE; ++c) {
- byte c0 = c;
-
- t = assertThrowsWithCause(
- () -> {
- msg.code(c0);
-
- try {
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- }
- catch (IgniteCheckedException e) {
- throw new RuntimeException(e);
- }
- },
- IllegalArgumentException.class);
-
- assertEquals("Unknown index key type code: " + c0, t.getMessage());
- }
-
- for (byte c = (byte)(IndexKeyTypeMessage.NULL_VALUE_CODE + 1); c < -1;
++c) {
- byte c0 = c;
-
- t = assertThrowsWithCause(
- () -> {
- msg.code(c0);
-
- try {
- msg.finishUnmarshal(jdk(), U.gridClassLoader());
- }
- catch (IgniteCheckedException e) {
- throw new RuntimeException(e);
- }
- }, IllegalArgumentException.class);
-
- assertEquals("Unknown index key type code: " + c0, t.getMessage());
- }
- }
-
- /** */
- @Test
- public void testConversionConsistency() throws IgniteCheckedException {
- for (IndexKeyType keyType : F.concat(IndexKeyType.values(),
(IndexKeyType)null)) {
- IndexKeyTypeMessage msg = new IndexKeyTypeMessage(keyType);
-
- assertEquals(keyType, msg.value());
-
- IndexKeyTypeMessage newMsg = new IndexKeyTypeMessage();
-
- msg.prepareMarshal(jdk());
-
- newMsg.code(msg.code());
-
- newMsg.finishUnmarshal(jdk(), U.gridClassLoader());
-
- assertEquals(msg.value(), newMsg.value());
- }
- }
-}
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 6763eee53fa..44a47adc753 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
@@ -42,7 +42,6 @@ import
org.apache.ignite.internal.managers.communication.CacheEntryPredicateAdap
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;
import
org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentV2Test;
import
org.apache.ignite.internal.processors.affinity.GridAffinityAssignmentV2TestNoOptimizations;
import
org.apache.ignite.internal.processors.affinity.GridAffinityProcessorRendezvousSelfTest;
@@ -153,7 +152,6 @@ import org.junit.runners.Suite;
ErrorMessageSelfTest.class,
CacheEntryPredicateAdapterMessageTest.class,
DefaultEnumMapperTest.class,
- IndexKeyTypeMessageTest.class,
IgniteDataTransferObjectProcessorTest.class,
CompressedMessageTest.class
})