From 6016f3caa10acd06e9ebd2f813851ef1c9539176 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Sun, 24 Apr 2022 18:01:13 +0200 Subject: [PATCH 1/1] Improve IdentifiablePayload.toString() implementations We can expose at least the size (and most of the time identity) of the payload. Let's do that to ease debugging. JIRA: CONTROLLER-2043 Change-Id: Ia0f1e17ca46de8a9d117d5f8bdb85b246e32be01 Signed-off-by: Robert Varga --- .../persisted/AbstractIdentifiablePayload.java | 6 ++++++ .../persisted/CommitTransactionPayload.java | 13 ++++++++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/AbstractIdentifiablePayload.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/AbstractIdentifiablePayload.java index de9b0bba8a..0367d15fef 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/AbstractIdentifiablePayload.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/AbstractIdentifiablePayload.java @@ -10,6 +10,7 @@ package org.opendaylight.controller.cluster.datastore.persisted; import static com.google.common.base.Verify.verifyNotNull; import static java.util.Objects.requireNonNull; +import com.google.common.base.MoreObjects; import com.google.common.io.ByteStreams; import java.io.DataInput; import java.io.Externalizable; @@ -88,6 +89,11 @@ public abstract class AbstractIdentifiablePayload extends return serialized.length; } + @Override + public final String toString() { + return MoreObjects.toStringHelper(this).add("identifier", identifier).add("size", size()).toString(); + } + protected final Object writeReplace() { return verifyNotNull(externalizableProxy(serialized)); } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/CommitTransactionPayload.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/CommitTransactionPayload.java index 3fc636b851..6749244fbb 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/CommitTransactionPayload.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/CommitTransactionPayload.java @@ -13,6 +13,7 @@ import static java.util.Objects.requireNonNull; import com.google.common.annotations.Beta; import com.google.common.annotations.VisibleForTesting; +import com.google.common.base.MoreObjects; import com.google.common.io.ByteStreams; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.io.DataInput; @@ -57,7 +58,7 @@ public abstract class CommitTransactionPayload extends IdentifiablePayload candidate = null; CommitTransactionPayload() { - + // hidden on purpose } public static @NonNull CommitTransactionPayload create(final TransactionIdentifier transactionId, @@ -126,6 +127,16 @@ public abstract class CommitTransactionPayload extends IdentifiablePayload