Author: nextgens
Date: 2007-04-15 15:04:53 +0000 (Sun, 15 Apr 2007)
New Revision: 12748
Modified:
trunk/freenet/src/freenet/node/NodeStats.java
trunk/freenet/src/freenet/node/fcp/ListPeersMessage.java
Log:
Hopefully fix jflesch's problem
Modified: trunk/freenet/src/freenet/node/NodeStats.java
===================================================================
--- trunk/freenet/src/freenet/node/NodeStats.java 2007-04-15 14:56:50 UTC
(rev 12747)
+++ trunk/freenet/src/freenet/node/NodeStats.java 2007-04-15 15:04:53 UTC
(rev 12748)
@@ -717,85 +717,88 @@
fs.put("numberOfTransferringRequestSenders",
node.getNumTransferringRequestSenders());
fs.put("numberOfARKFetchers", node.getNumARKFetchers());
- long[] total = IOStatisticCollector.getTotalIO();
- long total_output_rate = (total[0]) / nodeUptimeSeconds;
- long total_input_rate = (total[1]) / nodeUptimeSeconds;
- long totalPayloadOutput = node.getTotalPayloadSent();
- long total_payload_output_rate = totalPayloadOutput /
nodeUptimeSeconds;
- int total_payload_output_percent = (int) (100 *
totalPayloadOutput / total[0]);
- fs.put("totalOutputBytes", total[0]);
- fs.put("totalOutputRate", total_output_rate);
- fs.put("totalPayloadOutputBytes", totalPayloadOutput);
- fs.put("totalPayloadOutputRate", total_payload_output_rate);
- fs.put("totalPayloadOutputPercent",
total_payload_output_percent);
- fs.put("totalInputBytes", total[1]);
- fs.put("totalInputRate", total_input_rate);
- long[] rate = getNodeIOStats();
- long deltaMS = (rate[5] - rate[2]);
- double recent_output_rate = 1000.0 * (rate[3] - rate[0]) /
deltaMS;
- double recent_input_rate = 1000.0 * (rate[4] - rate[1]) /
deltaMS;
- fs.put("recentOutputRate", recent_output_rate);
- fs.put("recentInputRate", recent_input_rate);
- String [] routingBackoffReasons =
peers.getPeerNodeRoutingBackoffReasons();
- if(routingBackoffReasons.length != 0) {
- for(int i=0;i<routingBackoffReasons.length;i++) {
- fs.put("numberWithRoutingBackoffReasons." +
routingBackoffReasons[i],
peers.getPeerNodeRoutingBackoffReasonSize(routingBackoffReasons[i]));
+ if(numberOfConnected > 0) { // it clashes if there is no peer
)> no traffic
+ long[] total = IOStatisticCollector.getTotalIO();
+ long total_output_rate = (total[0]) / nodeUptimeSeconds;
+ long total_input_rate = (total[1]) / nodeUptimeSeconds;
+ long totalPayloadOutput = node.getTotalPayloadSent();
+ long total_payload_output_rate = totalPayloadOutput /
nodeUptimeSeconds;
+ int total_payload_output_percent = (int) (100 *
totalPayloadOutput / total[0]);
+ fs.put("totalOutputBytes", total[0]);
+ fs.put("totalOutputRate", total_output_rate);
+ fs.put("totalPayloadOutputBytes", totalPayloadOutput);
+ fs.put("totalPayloadOutputRate",
total_payload_output_rate);
+ fs.put("totalPayloadOutputPercent",
total_payload_output_percent);
+ fs.put("totalInputBytes", total[1]);
+ fs.put("totalInputRate", total_input_rate);
+
+ long[] rate = getNodeIOStats();
+ long deltaMS = (rate[5] - rate[2]);
+ double recent_output_rate = 1000.0 * (rate[3] -
rate[0]) / deltaMS;
+ double recent_input_rate = 1000.0 * (rate[4] - rate[1])
/ deltaMS;
+ fs.put("recentOutputRate", recent_output_rate);
+ fs.put("recentInputRate", recent_input_rate);
+
+ String [] routingBackoffReasons =
peers.getPeerNodeRoutingBackoffReasons();
+ if(routingBackoffReasons.length != 0) {
+ for(int i=0;i<routingBackoffReasons.length;i++)
{
+
fs.put("numberWithRoutingBackoffReasons." + routingBackoffReasons[i],
peers.getPeerNodeRoutingBackoffReasonSize(routingBackoffReasons[i]));
+ }
}
- }
- double swaps = (double)node.getSwaps();
- double noSwaps = (double)node.getNoSwaps();
- double numberOfRemotePeerLocationsSeenInSwaps =
(double)node.getNumberOfRemotePeerLocationsSeenInSwaps();
- fs.putSingle("numberOfRemotePeerLocationsSeenInSwaps",
Double.toString(numberOfRemotePeerLocationsSeenInSwaps));
- double avgConnectedPeersPerNode = 0.0;
- if ((numberOfRemotePeerLocationsSeenInSwaps > 0.0) && ((swaps >
0.0) || (noSwaps > 0.0))) {
- avgConnectedPeersPerNode =
numberOfRemotePeerLocationsSeenInSwaps/(swaps+noSwaps);
- }
- fs.putSingle("avgConnectedPeersPerNode",
Double.toString(avgConnectedPeersPerNode));
+ double swaps = (double)node.getSwaps();
+ double noSwaps = (double)node.getNoSwaps();
+ double numberOfRemotePeerLocationsSeenInSwaps =
(double)node.getNumberOfRemotePeerLocationsSeenInSwaps();
+ fs.putSingle("numberOfRemotePeerLocationsSeenInSwaps",
Double.toString(numberOfRemotePeerLocationsSeenInSwaps));
+ double avgConnectedPeersPerNode = 0.0;
+ if ((numberOfRemotePeerLocationsSeenInSwaps > 0.0) &&
((swaps > 0.0) || (noSwaps > 0.0))) {
+ avgConnectedPeersPerNode =
numberOfRemotePeerLocationsSeenInSwaps/(swaps+noSwaps);
+ }
+ fs.putSingle("avgConnectedPeersPerNode",
Double.toString(avgConnectedPeersPerNode));
- int startedSwaps = node.getStartedSwaps();
- int swapsRejectedAlreadyLocked =
node.getSwapsRejectedAlreadyLocked();
- int swapsRejectedNowhereToGo =
node.getSwapsRejectedNowhereToGo();
- int swapsRejectedRateLimit = node.getSwapsRejectedRateLimit();
- int swapsRejectedLoop = node.getSwapsRejectedLoop();
- int swapsRejectedRecognizedID =
node.getSwapsRejectedRecognizedID();
- double locationChangePerSession =
node.getLocationChangeSession();
- double locationChangePerSwap = 0.0;
- double locationChangePerMinute = 0.0;
- double swapsPerMinute = 0.0;
- double noSwapsPerMinute = 0.0;
- double swapsPerNoSwaps = 0.0;
- if (swaps > 0) {
- locationChangePerSwap = locationChangePerSession/swaps;
+ int startedSwaps = node.getStartedSwaps();
+ int swapsRejectedAlreadyLocked =
node.getSwapsRejectedAlreadyLocked();
+ int swapsRejectedNowhereToGo =
node.getSwapsRejectedNowhereToGo();
+ int swapsRejectedRateLimit =
node.getSwapsRejectedRateLimit();
+ int swapsRejectedLoop = node.getSwapsRejectedLoop();
+ int swapsRejectedRecognizedID =
node.getSwapsRejectedRecognizedID();
+ double locationChangePerSession =
node.getLocationChangeSession();
+ double locationChangePerSwap = 0.0;
+ double locationChangePerMinute = 0.0;
+ double swapsPerMinute = 0.0;
+ double noSwapsPerMinute = 0.0;
+ double swapsPerNoSwaps = 0.0;
+ if (swaps > 0) {
+ locationChangePerSwap =
locationChangePerSession/swaps;
+ }
+ if ((swaps > 0.0) && (nodeUptimeSeconds >= 60)) {
+ locationChangePerMinute =
locationChangePerSession/(double)(nodeUptimeSeconds/60.0);
+ }
+ if ((swaps > 0.0) && (nodeUptimeSeconds >= 60)) {
+ swapsPerMinute =
swaps/(double)(nodeUptimeSeconds/60.0);
+ }
+ if ((noSwaps > 0.0) && (nodeUptimeSeconds >= 60)) {
+ noSwapsPerMinute =
noSwaps/(double)(nodeUptimeSeconds/60.0);
+ }
+ if ((swaps > 0.0) && (noSwaps > 0.0)) {
+ swapsPerNoSwaps = swaps/noSwaps;
+ }
+ fs.put("locationChangePerSession",
locationChangePerSession);
+ fs.put("locationChangePerSwap", locationChangePerSwap);
+ fs.put("locationChangePerMinute",
locationChangePerMinute);
+ fs.put("swapsPerMinute", swapsPerMinute);
+ fs.put("noSwapsPerMinute", noSwapsPerMinute);
+ fs.put("swapsPerNoSwaps", swapsPerNoSwaps);
+ fs.put("swaps", swaps);
+ fs.put("noSwaps", noSwaps);
+ fs.put("startedSwaps", startedSwaps);
+ fs.put("swapsRejectedAlreadyLocked",
swapsRejectedAlreadyLocked);
+ fs.put("swapsRejectedNowhereToGo",
swapsRejectedNowhereToGo);
+ fs.put("swapsRejectedRateLimit",
swapsRejectedRateLimit);
+ fs.put("swapsRejectedLoop", swapsRejectedLoop);
+ fs.put("swapsRejectedRecognizedID",
swapsRejectedRecognizedID);
}
- if ((swaps > 0.0) && (nodeUptimeSeconds >= 60)) {
- locationChangePerMinute =
locationChangePerSession/(double)(nodeUptimeSeconds/60.0);
- }
- if ((swaps > 0.0) && (nodeUptimeSeconds >= 60)) {
- swapsPerMinute = swaps/(double)(nodeUptimeSeconds/60.0);
- }
- if ((noSwaps > 0.0) && (nodeUptimeSeconds >= 60)) {
- noSwapsPerMinute =
noSwaps/(double)(nodeUptimeSeconds/60.0);
- }
- if ((swaps > 0.0) && (noSwaps > 0.0)) {
- swapsPerNoSwaps = swaps/noSwaps;
- }
- fs.put("locationChangePerSession", locationChangePerSession);
- fs.put("locationChangePerSwap", locationChangePerSwap);
- fs.put("locationChangePerMinute", locationChangePerMinute);
- fs.put("swapsPerMinute", swapsPerMinute);
- fs.put("noSwapsPerMinute", noSwapsPerMinute);
- fs.put("swapsPerNoSwaps", swapsPerNoSwaps);
- fs.put("swaps", swaps);
- fs.put("noSwaps", noSwaps);
- fs.put("startedSwaps", startedSwaps);
- fs.put("swapsRejectedAlreadyLocked",
swapsRejectedAlreadyLocked);
- fs.put("swapsRejectedNowhereToGo", swapsRejectedNowhereToGo);
- fs.put("swapsRejectedRateLimit", swapsRejectedRateLimit);
- fs.put("swapsRejectedLoop", swapsRejectedLoop);
- fs.put("swapsRejectedRecognizedID", swapsRejectedRecognizedID);
-
long fix32kb = 32 * 1024;
long cachedKeys = node.getChkDatacache().keyCount();
long cachedSize = cachedKeys * fix32kb;
Modified: trunk/freenet/src/freenet/node/fcp/ListPeersMessage.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/ListPeersMessage.java 2007-04-15
14:56:50 UTC (rev 12747)
+++ trunk/freenet/src/freenet/node/fcp/ListPeersMessage.java 2007-04-15
15:04:53 UTC (rev 12748)
@@ -33,12 +33,11 @@
throw new
MessageInvalidException(ProtocolErrorMessage.ACCESS_DENIED, "ListPeers requires
full access", null, false);
}
PeerNode[] nodes = node.getPeerNodes();
- if(nodes != null) {
- for(int i = 0; i < nodes.length; i++) {
- PeerNode pn = nodes[i];
- handler.outputHandler.queue(new Peer(pn,
withMetadata, withVolatile));
- }
+ for(int i = 0; i < nodes.length; i++) {
+ PeerNode pn = nodes[i];
+ handler.outputHandler.queue(new Peer(pn, withMetadata,
withVolatile));
}
+
handler.outputHandler.queue(new EndListPeersMessage());
}