This is an automated email from the ASF dual-hosted git repository.
shishkovilja 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 84a619951f3 IGNITE-26757 Refactor CacheInvokeDirectResult (#12431)
84a619951f3 is described below
commit 84a619951f37747e95ded265d2209d657e06175f
Author: Vladimir Steshin <[email protected]>
AuthorDate: Mon Oct 27 10:46:24 2025 +0300
IGNITE-26757 Refactor CacheInvokeDirectResult (#12431)
---
.../managers/communication/ErrorMessage.java | 69 ++++-----
.../communication/GridIoMessageFactory.java | 3 +-
.../processors/cache/CacheInvokeDirectResult.java | 159 ++++++---------------
.../processors/cache/CacheInvokeResult.java | 6 +-
.../internal/processors/cache/GridCacheReturn.java | 2 +-
.../distributed/GridDistributedLockResponse.java | 2 +-
.../dht/atomic/GridDhtAtomicUpdateResponse.java | 2 +-
.../atomic/GridNearAtomicSingleUpdateFuture.java | 2 +-
.../dht/atomic/GridNearAtomicUpdateFuture.java | 2 +-
.../dht/atomic/GridNearAtomicUpdateResponse.java | 2 +-
.../cache/distributed/dht/atomic/UpdateErrors.java | 4 +-
.../communication/ErrorMessageSelfTest.java | 8 +-
12 files changed, 100 insertions(+), 161 deletions(-)
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/ErrorMessage.java
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/ErrorMessage.java
index 62b7bb7972b..36063c2352b 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/ErrorMessage.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/ErrorMessage.java
@@ -21,9 +21,12 @@ import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
import org.apache.ignite.internal.MessageProcessor;
import org.apache.ignite.internal.Order;
+import org.apache.ignite.internal.util.tostring.GridToStringExclude;
+import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.marshaller.jdk.JdkMarshaller;
import org.apache.ignite.plugin.extensions.communication.Message;
+import org.apache.ignite.plugin.extensions.communication.MessageWriter;
import org.jetbrains.annotations.Nullable;
import static org.apache.ignite.marshaller.Marshallers.jdk;
@@ -34,14 +37,15 @@ import static org.apache.ignite.marshaller.Marshallers.jdk;
* to transfer some error as part of some message. See {@link
MessageProcessor} for details.
* <p>Currently, under the hood marshalling and unmarshalling is performed by
{@link JdkMarshaller}.
*/
-@SuppressWarnings({"AssignmentOrReturnOfFieldWithMutableType",
"NullableProblems"})
+@SuppressWarnings({"NullableProblems", "unused"})
public class ErrorMessage implements Message {
- /** Serialized form of throwable. */
+ /** Serialization and deserealization call holder. */
@Order(value = 0, method = "errorBytes")
+ @GridToStringExclude
private @Nullable byte[] errBytes;
/** Original error. It is transient and necessary only to avoid duplicated
serialization and deserializtion. */
- private volatile @Nullable Throwable err;
+ private @Nullable Throwable err;
/**
* Default constructor.
@@ -58,48 +62,44 @@ public class ErrorMessage implements Message {
}
/**
- * @return Serialized form of throwable.
+ * Provides serialized bytes of the error. Should be called only once.
+ *
+ * @return Serialized error.
+ * @see MessageWriter
*/
public @Nullable byte[] errorBytes() {
- try {
- if (errBytes == null && err != null)
- errBytes = U.marshal(jdk(), err);
+ if (err == null)
+ return null;
- return errBytes;
+ try {
+ return U.marshal(jdk(), err);
}
catch (IgniteCheckedException e) {
- throw new IgniteException(e);
+ throw new IgniteException("Unable to marshal the holding error.",
e);
}
}
/**
- * @param errBytes New serialized form of throwable.
+ * Deserializes the error from {@code errBytes}. Should be called only
once.
+ *
+ * @param errBytes Serialized error.
+ * @see MessageWriter
*/
public void errorBytes(@Nullable byte[] errBytes) {
- this.errBytes = errBytes;
- }
-
- /**
- * @return Original {@link Throwable}.
- */
- public @Nullable Throwable toThrowable() {
- if (err != null)
- return err;
-
- synchronized (this) {
- if (err == null && errBytes != null) {
- try {
- err = U.unmarshal(jdk(), errBytes, U.gridClassLoader());
-
- // It is not required anymore.
- errBytes = null;
- }
- catch (IgniteCheckedException e) {
- throw new IgniteException(e);
- }
+ if (errBytes == null)
+ err = null;
+ else {
+ try {
+ err = U.unmarshal(jdk(), errBytes, U.gridClassLoader());
+ }
+ catch (IgniteCheckedException e) {
+ throw new IgniteException("Failed to unmarshal error data
bytes.", e);
}
}
+ }
+ /** */
+ public @Nullable Throwable error() {
return err;
}
@@ -110,11 +110,16 @@ public class ErrorMessage implements Message {
* @return Error containing in the message.
*/
public static @Nullable Throwable error(@Nullable ErrorMessage errorMsg) {
- return errorMsg == null ? null : errorMsg.toThrowable();
+ return errorMsg == null ? null : errorMsg.error();
}
/** {@inheritDoc} */
@Override public short directType() {
return -100;
}
+
+ /** {@inheritDoc} */
+ @Override public String toString() {
+ return S.toString(ErrorMessage.class, this);
+ }
}
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 11e834db240..c36ad13741d 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
@@ -32,6 +32,7 @@ import
org.apache.ignite.internal.codegen.CacheEntryInfoCollectionSerializer;
import org.apache.ignite.internal.codegen.CacheEntryPredicateAdapterSerializer;
import org.apache.ignite.internal.codegen.CacheEvictionEntrySerializer;
import org.apache.ignite.internal.codegen.CacheGroupAffinityMessageSerializer;
+import org.apache.ignite.internal.codegen.CacheInvokeDirectResultSerializer;
import
org.apache.ignite.internal.codegen.CachePartitionPartialCountersMapSerializer;
import org.apache.ignite.internal.codegen.CacheVersionedValueSerializer;
import
org.apache.ignite.internal.codegen.CacheWriteSynchronizationModeMessageSerializer;
@@ -366,7 +367,7 @@ public class GridIoMessageFactory implements
MessageFactoryProvider {
factory.register((short)88, GridCacheReturn::new, new
GridCacheReturnSerializer());
factory.register((short)91, GridCacheEntryInfo::new, new
GridCacheEntryInfoSerializer());
factory.register((short)92, CacheEntryInfoCollection::new, new
CacheEntryInfoCollectionSerializer());
- factory.register((short)93, CacheInvokeDirectResult::new);
+ factory.register((short)93, CacheInvokeDirectResult::new, new
CacheInvokeDirectResultSerializer());
factory.register((short)94, IgniteTxKey::new, new
IgniteTxKeySerializer());
factory.register((short)95, DataStreamerEntry::new);
factory.register((short)96, CacheContinuousQueryEntry::new);
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheInvokeDirectResult.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheInvokeDirectResult.java
index b5026bee234..e9e66c48ec9 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheInvokeDirectResult.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheInvokeDirectResult.java
@@ -17,45 +17,37 @@
package org.apache.ignite.internal.processors.cache;
-import java.io.Serializable;
-import java.nio.ByteBuffer;
import javax.cache.processor.EntryProcessor;
import javax.cache.processor.MutableEntry;
import org.apache.ignite.IgniteCheckedException;
-import org.apache.ignite.internal.GridDirectTransient;
+import org.apache.ignite.internal.Order;
+import org.apache.ignite.internal.managers.communication.ErrorMessage;
import org.apache.ignite.internal.util.tostring.GridToStringInclude;
import org.apache.ignite.internal.util.typedef.internal.S;
-import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.plugin.extensions.communication.Message;
-import org.apache.ignite.plugin.extensions.communication.MessageReader;
-import org.apache.ignite.plugin.extensions.communication.MessageWriter;
import org.jetbrains.annotations.Nullable;
/**
*
*/
-public class CacheInvokeDirectResult implements Message, Serializable {
- /** */
- private static final long serialVersionUID = 0L;
-
- /** */
+public class CacheInvokeDirectResult implements Message {
+ /** Cache key. */
+ @Order(0)
private KeyCacheObject key;
/** */
@GridToStringInclude
- private transient Object unprepareRes;
+ private Object unprepareRes;
- /** */
+ /** Result. */
@GridToStringInclude
+ @Order(value = 1, method = "result")
private CacheObject res;
- /** */
+ /** Error message. */
@GridToStringInclude(sensitive = true)
- @GridDirectTransient
- private Exception err;
-
- /** */
- private byte[] errBytes;
+ @Order(value = 2, method = "errorMessage")
+ private ErrorMessage errMsg;
/**
* Default constructor.
@@ -93,9 +85,9 @@ public class CacheInvokeDirectResult implements Message,
Serializable {
* @param key Key.
* @param err Exception thrown by {@link
EntryProcessor#process(MutableEntry, Object...)}.
*/
- public CacheInvokeDirectResult(KeyCacheObject key, Exception err) {
+ public CacheInvokeDirectResult(KeyCacheObject key, Throwable err) {
this.key = key;
- this.err = err;
+ this.errMsg = new ErrorMessage(err);
}
/**
@@ -105,6 +97,13 @@ public class CacheInvokeDirectResult implements Message,
Serializable {
return key;
}
+ /**
+ * @param key Key.
+ */
+ public void key(KeyCacheObject key) {
+ this.key = key;
+ }
+
/**
* @return Result.
*/
@@ -112,35 +111,41 @@ public class CacheInvokeDirectResult implements Message,
Serializable {
return res;
}
+ /**
+ * @param res Result.
+ */
+ public void result(CacheObject res) {
+ this.res = res;
+ }
+
/**
* @return Error.
*/
- @Nullable public Exception error() {
- return err;
+ @Nullable public Throwable error() {
+ return ErrorMessage.error(errMsg);
+ }
+
+ /**
+ * @return Error message.
+ */
+ public ErrorMessage errorMessage() {
+ return errMsg;
+ }
+
+ /**
+ * @param errMsg Error message.
+ */
+ public void errorMessage(ErrorMessage errMsg) {
+ this.errMsg = errMsg;
}
/**
* @param ctx Cache context.
* @throws IgniteCheckedException If failed.
*/
- public void prepareMarshal(GridCacheContext ctx) throws
IgniteCheckedException {
+ public void prepareMarshal(GridCacheContext<?, ?> ctx) throws
IgniteCheckedException {
key.prepareMarshal(ctx.cacheObjectContext());
- if (err != null && errBytes == null) {
- try {
- errBytes = U.marshal(ctx.marshaller(), err);
- }
- catch (IgniteCheckedException e) {
- // Try send exception even if it's unable to marshal.
- IgniteCheckedException exc = new
IgniteCheckedException(err.getMessage());
-
- exc.setStackTrace(err.getStackTrace());
- exc.addSuppressed(e);
-
- errBytes = U.marshal(ctx.marshaller(), exc);
- }
- }
-
assert unprepareRes == null : "marshalResult() was not called for the
result: " + this;
if (res != null)
@@ -152,7 +157,7 @@ public class CacheInvokeDirectResult implements Message,
Serializable {
*
* @param ctx Cache context.
*/
- public void marshalResult(GridCacheContext ctx) {
+ public void marshalResult(GridCacheContext<?, ?> ctx) {
try {
if (unprepareRes != null)
res = ctx.toCacheObject(unprepareRes);
@@ -167,12 +172,9 @@ public class CacheInvokeDirectResult implements Message,
Serializable {
* @param ldr Class loader.
* @throws IgniteCheckedException If failed.
*/
- public void finishUnmarshal(GridCacheContext ctx, ClassLoader ldr) throws
IgniteCheckedException {
+ public void finishUnmarshal(GridCacheContext<?, ?> ctx, ClassLoader ldr)
throws IgniteCheckedException {
key.finishUnmarshal(ctx.cacheObjectContext(), ldr);
- if (errBytes != null && err == null)
- err = U.unmarshal(ctx.marshaller(), errBytes,
U.resolveClassLoader(ldr, ctx.gridConfig()));
-
if (res != null)
res.finishUnmarshal(ctx.cacheObjectContext(), ldr);
}
@@ -182,75 +184,6 @@ public class CacheInvokeDirectResult implements Message,
Serializable {
return 93;
}
- /** {@inheritDoc} */
- @Override public boolean writeTo(ByteBuffer buf, MessageWriter writer) {
- writer.setBuffer(buf);
-
- if (!writer.isHeaderWritten()) {
- if (!writer.writeHeader(directType()))
- return false;
-
- writer.onHeaderWritten();
- }
-
- switch (writer.state()) {
- case 0:
- if (!writer.writeByteArray(errBytes))
- return false;
-
- writer.incrementState();
-
- case 1:
- if (!writer.writeKeyCacheObject(key))
- return false;
-
- writer.incrementState();
-
- case 2:
- if (!writer.writeCacheObject(res))
- return false;
-
- writer.incrementState();
-
- }
-
- return true;
- }
-
- /** {@inheritDoc} */
- @Override public boolean readFrom(ByteBuffer buf, MessageReader reader) {
- reader.setBuffer(buf);
-
- switch (reader.state()) {
- case 0:
- errBytes = reader.readByteArray();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 1:
- key = reader.readKeyCacheObject();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 2:
- res = reader.readCacheObject();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- }
-
- return true;
- }
-
/** {@inheritDoc} */
@Override public String toString() {
return S.toString(CacheInvokeDirectResult.class, this);
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheInvokeResult.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheInvokeResult.java
index db0aa744ec6..23605aabe2f 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheInvokeResult.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheInvokeResult.java
@@ -43,7 +43,7 @@ public class CacheInvokeResult<T> implements
EntryProcessorResult<T>, Externaliz
private T res;
/** */
- private Exception err;
+ private Throwable err;
/**
* Empty constructor required by {@link Externalizable}.
@@ -76,7 +76,7 @@ public class CacheInvokeResult<T> implements
EntryProcessorResult<T>, Externaliz
/**
* Entry processor error;
*/
- public Exception error() {
+ public Throwable error() {
return err;
}
@@ -86,7 +86,7 @@ public class CacheInvokeResult<T> implements
EntryProcessorResult<T>, Externaliz
* @param err Exception thrown by {@link
EntryProcessor#process(MutableEntry, Object...)}.
* @return New instance.
*/
- public static <T> CacheInvokeResult<T> fromError(Exception err) {
+ public static <T> CacheInvokeResult<T> fromError(Throwable err) {
assert err != null;
CacheInvokeResult<T> res = new CacheInvokeResult<>();
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheReturn.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheReturn.java
index c56bd31132b..1c392d3362e 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheReturn.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheReturn.java
@@ -234,7 +234,7 @@ public class GridCacheReturn implements Message {
KeyCacheObject key,
@Nullable Object key0,
@Nullable Object res,
- @Nullable Exception err,
+ @Nullable Throwable err,
boolean keepBinary) {
assert v == null || v instanceof Map : v;
assert key != null;
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedLockResponse.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedLockResponse.java
index 8e01bb710c0..5d91aa91d49 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedLockResponse.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridDistributedLockResponse.java
@@ -142,7 +142,7 @@ public class GridDistributedLockResponse extends
GridDistributedBaseMessage {
/** {@inheritDoc} */
@Override public Throwable error() {
- return errMsg != null ? errMsg.toThrowable() : null;
+ return ErrorMessage.error(errMsg);
}
/**
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicUpdateResponse.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicUpdateResponse.java
index 59d3a41a75b..454cde16a60 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicUpdateResponse.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicUpdateResponse.java
@@ -122,7 +122,7 @@ public class GridDhtAtomicUpdateResponse extends
GridCacheIdMessage implements G
/** {@inheritDoc} */
@Override public Throwable error() {
- return errs != null ? errs.errorMessage().toThrowable() : null;
+ return errs != null ? errs.errorMessage().error() : null;
}
/**
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicSingleUpdateFuture.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicSingleUpdateFuture.java
index cdf72bab921..7c089656b7d 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicSingleUpdateFuture.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicSingleUpdateFuture.java
@@ -208,7 +208,7 @@ public class GridNearAtomicSingleUpdateFuture extends
GridNearAtomicAbstractUpda
if (errors != null) {
assert errors.errorMessage() != null;
- completeFuture(null, errors.errorMessage().toThrowable(),
res.futureId());
+ completeFuture(null, errors.errorMessage().error(),
res.futureId());
return;
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java
index ccde3cca66f..32e8c2774a4 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateFuture.java
@@ -334,7 +334,7 @@ public class GridNearAtomicUpdateFuture extends
GridNearAtomicAbstractUpdateFutu
if (errors != null) {
assert errors.errorMessage() != null;
- completeFuture(null, errors.errorMessage().toThrowable(),
res.futureId());
+ completeFuture(null, errors.errorMessage().error(),
res.futureId());
return;
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateResponse.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateResponse.java
index cd244735087..55c4cb96cb5 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateResponse.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateResponse.java
@@ -193,7 +193,7 @@ public class GridNearAtomicUpdateResponse extends
GridCacheIdMessage implements
/** {@inheritDoc} */
@Override public Throwable error() {
- return errs != null ? errs.errorMessage().toThrowable() : null;
+ return errs != null ? errs.errorMessage().error() : null;
}
/**
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/UpdateErrors.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/UpdateErrors.java
index 10011585990..c55c5982e2c 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/UpdateErrors.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/UpdateErrors.java
@@ -103,7 +103,7 @@ public class UpdateErrors implements Message {
if (errMsg == null)
errMsg = new ErrorMessage(new IgniteCheckedException("Failed to
update keys."));
- errMsg.toThrowable().addSuppressed(e);
+ errMsg.error().addSuppressed(e);
}
/**
@@ -119,7 +119,7 @@ public class UpdateErrors implements Message {
if (errMsg == null)
errMsg = new ErrorMessage(new IgniteCheckedException("Failed to
update keys on primary node."));
- errMsg.toThrowable().addSuppressed(e);
+ errMsg.error().addSuppressed(e);
}
/** */
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/ErrorMessageSelfTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/ErrorMessageSelfTest.java
index 2de636d6088..8463e67df63 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/ErrorMessageSelfTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/ErrorMessageSelfTest.java
@@ -36,7 +36,7 @@ public class ErrorMessageSelfTest {
ErrorMessage msg0 = new ErrorMessage(e);
- assertSame(e, msg0.toThrowable());
+ assertSame(e, msg0.error());
byte[] errBytes = msg0.errorBytes();
@@ -45,7 +45,7 @@ public class ErrorMessageSelfTest {
ErrorMessage msg1 = new ErrorMessage();
msg1.errorBytes(errBytes);
- Throwable t = msg1.toThrowable();
+ Throwable t = msg1.error();
assertNotNull(t);
assertTrue(X.hasCause(t, "Test exception", IgniteException.class));
@@ -55,14 +55,14 @@ public class ErrorMessageSelfTest {
/** */
@Test
public void testNull() {
- assertNull(new ErrorMessage(null).toThrowable());
+ assertNull(new ErrorMessage(null).error());
assertNull(new ErrorMessage(null).errorBytes());
ErrorMessage msg = new ErrorMessage();
msg.errorBytes(null);
- assertNull(msg.toThrowable());
+ assertNull(msg.error());
assertNull(msg.errorBytes());
}
}