From: Robert Varga Date: Mon, 24 Apr 2017 19:51:43 +0000 (+0200) Subject: Improve orphan transaction logging X-Git-Tag: release/nitrogen~317 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=commitdiff_plain;h=6f80fcdc491f11de11d45447107ad2edce054af5 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 --- 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(); + } }