From c45dbeced41db0fa006d12648f6c56e0a4be8f87 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Mon, 3 Apr 2023 17:26:04 +0200 Subject: [PATCH 1/1] Access historyId only once This is a simple improvement, improving access a bit. Change-Id: I42dbd91a0a8d5ce75cd99b36d786d446eac69501 Signed-off-by: Robert Varga --- .../cluster/datastore/ShardDataTree.java | 21 +++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTree.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTree.java index 65511017ae..7ad721fc90 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTree.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTree.java @@ -621,22 +621,21 @@ public class ShardDataTree extends ShardDataTreeTransactionParent { final ReadOnlyShardDataTreeTransaction newReadOnlyTransaction(final TransactionIdentifier txId) { shard.getShardMBean().incrementReadOnlyTransactionCount(); - if (txId.getHistoryId().getHistoryId() == 0) { + final var historyId = txId.getHistoryId(); + if (historyId.getHistoryId() == 0) { return new ReadOnlyShardDataTreeTransaction(this, txId, dataTree.takeSnapshot()); } - - return ensureTransactionChain(txId.getHistoryId(), null).newReadOnlyTransaction(txId); + return ensureTransactionChain(historyId, null).newReadOnlyTransaction(txId); } final ReadWriteShardDataTreeTransaction newReadWriteTransaction(final TransactionIdentifier txId) { shard.getShardMBean().incrementReadWriteTransactionCount(); - if (txId.getHistoryId().getHistoryId() == 0) { - return new ReadWriteShardDataTreeTransaction(ShardDataTree.this, txId, dataTree.takeSnapshot() - .newModification()); + final var historyId = txId.getHistoryId(); + if (historyId.getHistoryId() == 0) { + return new ReadWriteShardDataTreeTransaction(this, txId, dataTree.takeSnapshot().newModification()); } - - return ensureTransactionChain(txId.getHistoryId(), null).newReadWriteTransaction(txId); + return ensureTransactionChain(historyId, null).newReadWriteTransaction(txId); } @VisibleForTesting @@ -1184,11 +1183,11 @@ public class ShardDataTree extends ShardDataTreeTransactionParent { // the newReadWriteTransaction() final ShardDataTreeCohort newReadyCohort(final TransactionIdentifier txId, final DataTreeModification mod, final Optional> participatingShardNames) { - if (txId.getHistoryId().getHistoryId() == 0) { + final var historyId = txId.getHistoryId(); + if (historyId.getHistoryId() == 0) { return createReadyCohort(txId, mod, participatingShardNames); } - - return ensureTransactionChain(txId.getHistoryId(), null).createReadyCohort(txId, mod, participatingShardNames); + return ensureTransactionChain(historyId, null).createReadyCohort(txId, mod, participatingShardNames); } @SuppressFBWarnings(value = "DB_DUPLICATE_SWITCH_CLAUSES", justification = "See inline comments below.") -- 2.36.6