Skip to content

Commit b490f04

Browse files
authored
IGNITE-26402 Use MessageSerializer for GridDhtTxOnePhaseCommitAckRequest (#12328)
1 parent cbb1d0c commit b490f04

File tree

2 files changed

+12
-55
lines changed

2 files changed

+12
-55
lines changed

modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
import org.apache.ignite.internal.codegen.GridCacheVersionSerializer;
3535
import org.apache.ignite.internal.codegen.GridCheckpointRequestSerializer;
3636
import org.apache.ignite.internal.codegen.GridDhtPartitionExchangeIdSerializer;
37+
import org.apache.ignite.internal.codegen.GridDhtTxOnePhaseCommitAckRequestSerializer;
3738
import org.apache.ignite.internal.codegen.GridIntListSerializer;
3839
import org.apache.ignite.internal.codegen.GridJobCancelRequestSerializer;
3940
import org.apache.ignite.internal.codegen.GridJobSiblingsRequestSerializer;
@@ -222,7 +223,7 @@ public class GridIoMessageFactory implements MessageFactoryProvider {
222223
factory.register((short)-45, GridChangeGlobalStateMessageResponse::new);
223224
factory.register((short)-43, IgniteIoTestMessage::new);
224225
factory.register((short)-36, GridDhtAtomicSingleUpdateRequest::new);
225-
factory.register((short)-27, GridDhtTxOnePhaseCommitAckRequest::new);
226+
factory.register((short)-27, GridDhtTxOnePhaseCommitAckRequest::new, new GridDhtTxOnePhaseCommitAckRequestSerializer());
226227
factory.register((short)-26, TxLockList::new);
227228
factory.register((short)-25, TxLock::new, new TxLockSerializer());
228229
factory.register((short)-24, TxLocksRequest::new, new TxLocksRequestSerializer());

modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxOnePhaseCommitAckRequest.java

Lines changed: 10 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -17,24 +17,20 @@
1717

1818
package org.apache.ignite.internal.processors.cache.distributed.dht;
1919

20-
import java.nio.ByteBuffer;
2120
import java.util.Collection;
22-
import org.apache.ignite.internal.GridDirectCollection;
21+
import org.apache.ignite.internal.Order;
2322
import org.apache.ignite.internal.processors.cache.GridCacheMessage;
2423
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
2524
import org.apache.ignite.internal.util.tostring.GridToStringInclude;
2625
import org.apache.ignite.internal.util.typedef.internal.S;
27-
import org.apache.ignite.plugin.extensions.communication.MessageCollectionItemType;
28-
import org.apache.ignite.plugin.extensions.communication.MessageReader;
29-
import org.apache.ignite.plugin.extensions.communication.MessageWriter;
3026

3127
/**
3228
* One Phase Commit Near transaction ack request.
3329
*/
3430
public class GridDhtTxOnePhaseCommitAckRequest extends GridCacheMessage {
3531
/** Lock or transaction versions. */
3632
@GridToStringInclude
37-
@GridDirectCollection(GridCacheVersion.class)
33+
@Order(value = 3, method = "versions")
3834
protected Collection<GridCacheVersion> vers;
3935

4036
/**
@@ -63,12 +59,19 @@ public GridDhtTxOnePhaseCommitAckRequest(Collection<GridCacheVersion> vers) {
6359
}
6460

6561
/**
66-
* @return Version.
62+
* @return Lock or transaction versions.
6763
*/
6864
public Collection<GridCacheVersion> versions() {
6965
return vers;
7066
}
7167

68+
/**
69+
* @param vers Lock or transaction versions.
70+
*/
71+
public void versions(Collection<GridCacheVersion> vers) {
72+
this.vers = vers;
73+
}
74+
7275
/** {@inheritDoc} */
7376
@Override public String toString() {
7477
return S.toString(GridDhtTxOnePhaseCommitAckRequest.class, this, super.toString());
@@ -79,53 +82,6 @@ public Collection<GridCacheVersion> versions() {
7982
return addDepInfo;
8083
}
8184

82-
/** {@inheritDoc} */
83-
@Override public boolean writeTo(ByteBuffer buf, MessageWriter writer) {
84-
writer.setBuffer(buf);
85-
86-
if (!super.writeTo(buf, writer))
87-
return false;
88-
89-
if (!writer.isHeaderWritten()) {
90-
if (!writer.writeHeader(directType()))
91-
return false;
92-
93-
writer.onHeaderWritten();
94-
}
95-
96-
switch (writer.state()) {
97-
case 3:
98-
if (!writer.writeCollection(vers, MessageCollectionItemType.MSG))
99-
return false;
100-
101-
writer.incrementState();
102-
103-
}
104-
105-
return true;
106-
}
107-
108-
/** {@inheritDoc} */
109-
@Override public boolean readFrom(ByteBuffer buf, MessageReader reader) {
110-
reader.setBuffer(buf);
111-
112-
if (!super.readFrom(buf, reader))
113-
return false;
114-
115-
switch (reader.state()) {
116-
case 3:
117-
vers = reader.readCollection(MessageCollectionItemType.MSG);
118-
119-
if (!reader.isLastRead())
120-
return false;
121-
122-
reader.incrementState();
123-
124-
}
125-
126-
return true;
127-
}
128-
12985
/** {@inheritDoc} */
13086
@Override public short directType() {
13187
return -27;

0 commit comments

Comments
 (0)