Author: toad
Date: 2006-01-27 03:18:42 +0000 (Fri, 27 Jan 2006)
New Revision: 7949
Modified:
trunk/freenet/src/freenet/client/async/ClientRequestScheduler.java
trunk/freenet/src/freenet/node/Version.java
trunk/freenet/src/freenet/node/fcp/NodeHelloMessage.java
trunk/freenet/src/freenet/support/SortedVectorByNumber.java
Log:
400: (mandatory)
Fix another requests disappearing bug (a key structure was inadequately
synchronized).
Also make NodeHello say FCP 2.0.
Modified: trunk/freenet/src/freenet/client/async/ClientRequestScheduler.java
===================================================================
--- trunk/freenet/src/freenet/client/async/ClientRequestScheduler.java
2006-01-27 02:34:43 UTC (rev 7948)
+++ trunk/freenet/src/freenet/client/async/ClientRequestScheduler.java
2006-01-27 03:18:42 UTC (rev 7949)
@@ -93,6 +93,7 @@
* when it was added.
*/
public synchronized void remove(SendableRequest req) {
+ Logger.minor(this, "Removing "+req);
// Should not be called often.
int prio = req.getPriorityClass();
int retryCount = req.getRetryCount();
@@ -112,6 +113,7 @@
public synchronized SendableRequest removeFirst() {
// Priorities start at 0
+ Logger.minor(this, "removeFirst()");
for(int i=0;i<RequestStarter.MINIMUM_PRIORITY_CLASS;i++) {
SortedVectorByNumber s = priorities[i];
if(s == null) {
Modified: trunk/freenet/src/freenet/node/Version.java
===================================================================
--- trunk/freenet/src/freenet/node/Version.java 2006-01-27 02:34:43 UTC (rev
7948)
+++ trunk/freenet/src/freenet/node/Version.java 2006-01-27 03:18:42 UTC (rev
7949)
@@ -20,10 +20,10 @@
public static final String protocolVersion = "1.0";
/** The build number of the current revision */
- public static final int buildNumber = 399;
+ public static final int buildNumber = 400;
/** Oldest build of Fred we will talk to */
- public static final int lastGoodBuild = 399;
+ public static final int lastGoodBuild = 400;
/** The highest reported build of fred */
public static int highestSeenBuild = buildNumber;
Modified: trunk/freenet/src/freenet/node/fcp/NodeHelloMessage.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/NodeHelloMessage.java 2006-01-27
02:34:43 UTC (rev 7948)
+++ trunk/freenet/src/freenet/node/fcp/NodeHelloMessage.java 2006-01-27
03:18:42 UTC (rev 7949)
@@ -24,7 +24,7 @@
public SimpleFieldSet getFieldSet() {
SimpleFieldSet sfs = new SimpleFieldSet();
// FIXME
- sfs.put("FCPVersion", "0.7.0");
+ sfs.put("FCPVersion", "2.0");
sfs.put("Node", "Fred");
sfs.put("Version", Version.getVersionString());
sfs.put("Testnet", Boolean.toString(node.isTestnetEnabled()));
Modified: trunk/freenet/src/freenet/support/SortedVectorByNumber.java
===================================================================
--- trunk/freenet/src/freenet/support/SortedVectorByNumber.java 2006-01-27
02:34:43 UTC (rev 7948)
+++ trunk/freenet/src/freenet/support/SortedVectorByNumber.java 2006-01-27
03:18:42 UTC (rev 7949)
@@ -24,7 +24,7 @@
return data[0];
}
- public boolean isEmpty() {
+ public synchronized boolean isEmpty() {
return length == 0;
}
@@ -35,7 +35,7 @@
return null;
}
- public void remove(int item) {
+ public synchronized void remove(int item) {
int x = Arrays.binarySearch(data, new Integer(item),
comparator);
if(x >= 0) {
if(x < length-1)
@@ -49,7 +49,7 @@
}
}
- public void add(IntNumberedItem grabber) {
+ public synchronized void add(IntNumberedItem grabber) {
int x = Arrays.binarySearch(data, new
Integer(grabber.getNumber()), comparator);
if(x >= 0) throw new IllegalArgumentException(); // already
exists
// insertion point