Improve logging around transaction lifecycle
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / main / java / org / opendaylight / controller / cluster / datastore / FrontendReadOnlyTransaction.java
index 5c0d91396347065375beb3e9eb583ba6ad8eaf7c..071fded649adf0dd275602864fa51a3d22eab6c6 100644 (file)
@@ -23,6 +23,8 @@ import org.opendaylight.controller.cluster.access.concepts.RequestEnvelope;
 import org.opendaylight.controller.cluster.access.concepts.RequestException;
 import org.opendaylight.controller.cluster.access.concepts.UnsupportedRequestException;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * Read-only frontend transaction state as observed by the shard leader.
@@ -31,6 +33,8 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
  */
 @NotThreadSafe
 final class FrontendReadOnlyTransaction extends FrontendTransaction {
+    private static final Logger LOG = LoggerFactory.getLogger(FrontendReadOnlyTransaction.class);
+
     private final ReadOnlyShardDataTreeTransaction openTransaction;
 
     private FrontendReadOnlyTransaction(final AbstractFrontendHistory history,
@@ -56,15 +60,11 @@ final class FrontendReadOnlyTransaction extends FrontendTransaction {
             handleTransactionAbort((TransactionAbortRequest) request, envelope, now);
             return null;
         } else {
+            LOG.warn("Rejecting unsupported request {}", request);
             throw new UnsupportedRequestException(request);
         }
     }
 
-    @Override
-    void purge(final Runnable callback) {
-        openTransaction.purge(callback);
-    }
-
     private void handleTransactionAbort(final TransactionAbortRequest request, final RequestEnvelope envelope,
             final long now) throws RequestException {
         openTransaction.abort(() -> recordAndSendSuccess(envelope, now, new TransactionAbortSuccess(request.getTarget(),