Code Review
/
controller.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Fix warnings/javadocs in sal-distributed-datastore
[controller.git]
/
opendaylight
/
md-sal
/
sal-distributed-datastore
/
src
/
main
/
java
/
org
/
opendaylight
/
controller
/
cluster
/
datastore
/
jmx
/
mbeans
/
shard
/
ShardStats.java
diff --git
a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/jmx/mbeans/shard/ShardStats.java
b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/jmx/mbeans/shard/ShardStats.java
index 1f51c6f3a14e48076549ee4ef4b9ea1d663a439c..6e8ff146d4790f376fba19c33a8e0a474a4f3e86 100644
(file)
--- a/
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/jmx/mbeans/shard/ShardStats.java
+++ b/
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/jmx/mbeans/shard/ShardStats.java
@@
-8,8
+8,10
@@
package org.opendaylight.controller.cluster.datastore.jmx.mbeans.shard;
package org.opendaylight.controller.cluster.datastore.jmx.mbeans.shard;
+import akka.actor.ActorRef;
import akka.pattern.Patterns;
import akka.util.Timeout;
import akka.pattern.Patterns;
import akka.util.Timeout;
+import com.google.common.base.Joiner;
import com.google.common.base.Stopwatch;
import com.google.common.cache.Cache;
import com.google.common.cache.CacheBuilder;
import com.google.common.base.Stopwatch;
import com.google.common.cache.Cache;
import com.google.common.cache.CacheBuilder;
@@
-20,6
+22,7
@@
import java.util.Map;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicLong;
import org.opendaylight.controller.cluster.datastore.Shard;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicLong;
import org.opendaylight.controller.cluster.datastore.Shard;
+import org.opendaylight.controller.cluster.raft.base.messages.InitiateCaptureSnapshot;
import org.opendaylight.controller.cluster.raft.client.messages.FollowerInfo;
import org.opendaylight.controller.cluster.raft.client.messages.GetOnDemandRaftState;
import org.opendaylight.controller.cluster.raft.client.messages.OnDemandRaftState;
import org.opendaylight.controller.cluster.raft.client.messages.FollowerInfo;
import org.opendaylight.controller.cluster.raft.client.messages.GetOnDemandRaftState;
import org.opendaylight.controller.cluster.raft.client.messages.OnDemandRaftState;
@@
-36,7
+39,7
@@
public class ShardStats extends AbstractMXBean implements ShardStatsMXBean {
private static final SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
private static final SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
- private static final Cache<String, OnDemandRaftState>
onDemandRaftStateCache
=
+ private static final Cache<String, OnDemandRaftState>
ONDEMAND_RAFT_STATE_CACHE
=
CacheBuilder.newBuilder().expireAfterWrite(2, TimeUnit.SECONDS).build();
private long committedTransactionsCount;
CacheBuilder.newBuilder().expireAfterWrite(2, TimeUnit.SECONDS).build();
private long committedTransactionsCount;
@@
-75,14
+78,15
@@
public class ShardStats extends AbstractMXBean implements ShardStatsMXBean {
this.shard = shard;
}
this.shard = shard;
}
+ @SuppressWarnings("checkstyle:IllegalCatch")
private OnDemandRaftState getOnDemandRaftState() {
String name = getShardName();
private OnDemandRaftState getOnDemandRaftState() {
String name = getShardName();
- OnDemandRaftState state =
onDemandRaftStateCache
.getIfPresent(name);
- if(state == null) {
+ OnDemandRaftState state =
ONDEMAND_RAFT_STATE_CACHE
.getIfPresent(name);
+ if
(state == null) {
statRetrievalError = null;
statRetrievalTime = null;
statRetrievalError = null;
statRetrievalTime = null;
- if(shard != null) {
+ if
(shard != null) {
Timeout timeout = new Timeout(10, TimeUnit.SECONDS);
try {
Stopwatch timer = Stopwatch.createStarted();
Timeout timeout = new Timeout(10, TimeUnit.SECONDS);
try {
Stopwatch timer = Stopwatch.createStarted();
@@
-91,7
+95,7
@@
public class ShardStats extends AbstractMXBean implements ShardStatsMXBean {
GetOnDemandRaftState.INSTANCE, timeout), timeout.duration());
statRetrievalTime = timer.stop().toString();
GetOnDemandRaftState.INSTANCE, timeout), timeout.duration());
statRetrievalTime = timer.stop().toString();
-
onDemandRaftStateCache
.put(name, state);
+
ONDEMAND_RAFT_STATE_CACHE
.put(name, state);
} catch (Exception e) {
statRetrievalError = e.toString();
}
} catch (Exception e) {
statRetrievalError = e.toString();
}
@@
-193,6
+197,16
@@
public class ShardStats extends AbstractMXBean implements ShardStatsMXBean {
return getOnDemandRaftState().getVotedFor();
}
return getOnDemandRaftState().getVotedFor();
}
+ @Override
+ public boolean isVoting() {
+ return getOnDemandRaftState().isVoting();
+ }
+
+ @Override
+ public String getPeerVotingStates() {
+ return toStringMap(getOnDemandRaftState().getPeerVotingStates());
+ }
+
@Override
public boolean isSnapshotCaptureInitiated() {
return getOnDemandRaftState().isSnapshotCaptureInitiated();
@Override
public boolean isSnapshotCaptureInitiated() {
return getOnDemandRaftState().isSnapshotCaptureInitiated();
@@
-242,8
+256,7
@@
public class ShardStats extends AbstractMXBean implements ShardStatsMXBean {
return failedReadTransactionsCount.incrementAndGet();
}
return failedReadTransactionsCount.incrementAndGet();
}
- public long incrementAbortTransactionsCount ()
- {
+ public long incrementAbortTransactionsCount() {
return ++abortTransactionsCount;
}
return ++abortTransactionsCount;
}
@@
-252,7
+265,7
@@
public class ShardStats extends AbstractMXBean implements ShardStatsMXBean {
}
@Override
}
@Override
- public long getInMemoryJournalDataSize(){
+ public long getInMemoryJournalDataSize()
{
return getOnDemandRaftState().getInMemoryJournalDataSize();
}
return getOnDemandRaftState().getInMemoryJournalDataSize();
}
@@
-262,10
+275,10
@@
public class ShardStats extends AbstractMXBean implements ShardStatsMXBean {
}
/**
}
/**
- *
resets the counters related to transactions
+ *
Resets the counters related to transactions.
*/
@Override
*/
@Override
- public void resetTransactionCounters(){
+ public void resetTransactionCounters()
{
committedTransactionsCount = 0;
readOnlyTransactionCount = 0;
committedTransactionsCount = 0;
readOnlyTransactionCount = 0;
@@
-300,17
+313,11
@@
public class ShardStats extends AbstractMXBean implements ShardStatsMXBean {
@Override
public String getPeerAddresses() {
@Override
public String getPeerAddresses() {
- StringBuilder builder = new StringBuilder();
- int i = 0;
- for(Map.Entry<String, String> e: getOnDemandRaftState().getPeerAddresses().entrySet()) {
- if(i++ > 0) {
- builder.append(", ");
- }
-
- builder.append(e.getKey()).append(": ").append(e.getValue());
- }
+ return toStringMap(getOnDemandRaftState().getPeerAddresses());
+ }
- return builder.toString();
+ private static String toStringMap(Map<?, ?> map) {
+ return Joiner.on(", ").withKeyValueSeparator(": ").join(map);
}
@Override
}
@Override
@@
-344,4
+351,16
@@
public class ShardStats extends AbstractMXBean implements ShardStatsMXBean {
public int getPendingTxCommitQueueSize() {
return shard.getPendingTxCommitQueueSize();
}
public int getPendingTxCommitQueueSize() {
return shard.getPendingTxCommitQueueSize();
}
+
+ @Override
+ public int getTxCohortCacheSize() {
+ return shard.getCohortCacheSize();
+ }
+
+ @Override
+ public void captureSnapshot() {
+ if (shard != null) {
+ shard.getSelf().tell(new InitiateCaptureSnapshot(), ActorRef.noSender());
+ }
+ }
}
}