Author: toad
Date: 2008-01-17 18:46:14 +0000 (Thu, 17 Jan 2008)
New Revision: 17104

Modified:
   trunk/freenet/src/freenet/node/Version.java
Log:
1099: (mandatory MONDAY)
Seed connections:
- Disable Update Over Mandatory on seednode connections. It's a good DoS and 
it's not necessary since announcement is a stable protocol.
Client layer:
- Fix a nasty race condition that caused downloads to hang: remove the request, 
add a block, don't schedule because request still has a block, then remove the 
block ... we lose the SubSegment. :(. Fix is to schedule if we aren't scheduled 
in add() regardless of how many blocks we have queued, rather than only 
scheduling when we go from 0 to 1 blocks queued.
- Fix threading problem in RequestStarter: remove the block number from the 
request on the starter thread, then execute it on the requestor thread. So we 
won't create excessive threads for the same request under load due to pooled 
execution delays.
- Refactoring in SendableRequest etc to support this: public boolean send(core, 
sched, keyNum), internalError().
- More related refactoring: move allKeys() and chooseKey() into 
SendableRequest, make the SendableInsert API keyNum-compatible.
- Note that we have not yet created SplitFileInserterSubSegment, but it is 
somewhat easier now to do so.
Messaging layer:
- Don't lose some MessageItem's when we fail to send a formatted MI due to 
disconnection, key change (i.e. rekey), blocking or a throwable being thrown.
Web interface:
- Allow sites' "add a bookmark" links to specify hasAnActivelink.
Messaging:
- Match disconnection on the main _source or if that is null on _or's source, 
continuing until we find an _source that isn't null or run out of _or's.
- Simplifications and refactoring/correctness fixes.
- Properly support matching disconnections when waiting on multiple nodes.
- Prevent race condition missing connection restarts while adding a filter.
- Remove unused and confusing option to not match connection 
disconnects/restarts. We can re-add it if we find a use for it.
Web interface:
- Remove Entry Point from default indexes.
- Update TUFI and Another Index edition numbers.
- Don't show the NAT warnings if we're sure the port is forwarded. Only mention 
the ports which are not forwarded.
- Mention both ports for forwarding if we do show the NAT warnings.
- Don't show the the too-many-disconnected-peers warning if we're bursting to 
all disconnected darknet peers.
Startup:
- Fix yet another NPE when there is no freenet.ini
Requests:
- Fatal timeout should generate a RejectedOverload(true) not (false). Probably 
no practical impact as nobody will read it anyway.
Stats:
- Include both receiving and sending requests in transferring count.
Dev stuff:
- Comments
- Minor synchronization improvements
- Dead code deletion
- Refactoring
-- PeerNode: isSearchable() -> isRealConnection().
- Delete dead code
-- Old ping code
- Logging (big stuff below)
-- AnnouncementCallback.nodeNotAdded(): get rid of bogusNoderef("not added - 
maybe not needed").
- A fix to the RecentlyFailed code in RequestSender. Won't be used until 
ULPRs/failure tables are enabled: on an RF with no timeout left, don't DNF, 
that would create another failure entry, instead move on to the next node.

XMLLibrarian: (8 -> 14)
- Better error reporting. Especially of FetchException's when trying to fetch 
indexes. Link to the sub-index that failed so the user can queue it.

juiceman
robert
toad
tommy
xor

Modified: trunk/freenet/src/freenet/node/Version.java
===================================================================
--- trunk/freenet/src/freenet/node/Version.java 2008-01-17 18:07:35 UTC (rev 
17103)
+++ trunk/freenet/src/freenet/node/Version.java 2008-01-17 18:46:14 UTC (rev 
17104)
@@ -24,17 +24,17 @@
        public static final String protocolVersion = "1.0";

        /** The build number of the current revision */
-       private static final int buildNumber = 1098;
+       private static final int buildNumber = 1099;

        /** Oldest build of Fred we will talk to */
        private static final int oldLastGoodBuild = 1094;
-       private static final int newLastGoodBuild = 1098;
+       private static final int newLastGoodBuild = 1099;
        static final long transitionTime;

        static {
                final Calendar _cal = 
Calendar.getInstance(TimeZone.getTimeZone("GMT"));
                // year, month - 1 (or constant), day, hour, minute, second
-               _cal.set( 2008, Calendar.JANUARY, 17, 0, 0, 0 );
+               _cal.set( 2008, Calendar.JANUARY, 21, 0, 0, 0 );
                transitionTime = _cal.getTimeInMillis();
        }



Reply via email to