From 8658cec8261a54a344bfec6968d98a9351996e1e Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Mon, 24 Apr 2017 21:51:43 +0200 Subject: [PATCH] Improve orphan transaction logging This patch improves logging when we perform last-resort cleanup from garbage collector, so that the type of client handle is also logged. This allows us to discern snapshots and snapshots. Also lower the logging level to INFO, as this is something that should be fixed by whoever is causing it, but it does not pose serious threat to stability. Change-Id: Iad55c49de87ca73f9671f04f569be7eae0e4f885 Signed-off-by: Robert Varga --- .../cluster/databroker/ClientBackedTransaction.java | 2 +- .../databroker/actors/dds/AbstractClientHandle.java | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/ClientBackedTransaction.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/ClientBackedTransaction.java index 6c14297739..a01f7a2d6a 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/ClientBackedTransaction.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/ClientBackedTransaction.java @@ -51,7 +51,7 @@ abstract class ClientBackedTransaction> extend public void finalizeReferent() { FINALIZERS.remove(this); if (transaction.abort()) { - LOG.warn("Aborted orphan transaction {}", transaction.getIdentifier()); + LOG.info("Aborted orphan transaction {}", transaction); } } } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/AbstractClientHandle.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/AbstractClientHandle.java index b64cf21776..4b1d613636 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/AbstractClientHandle.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/AbstractClientHandle.java @@ -8,6 +8,7 @@ package org.opendaylight.controller.cluster.databroker.actors.dds; import com.google.common.annotations.Beta; +import com.google.common.base.MoreObjects; import com.google.common.base.Preconditions; import java.util.Collection; import java.util.Map; @@ -116,4 +117,10 @@ public abstract class AbstractClientHandle e Preconditions.checkState(local != null, "Transaction %s is closed", transactionId); return local; } + + @Override + public final String toString() { + return MoreObjects.toStringHelper(this).omitNullValues().add("identifier", transactionId).add("state", state) + .toString(); + } } -- 2.36.6