Author: toad
Date: 2008-02-02 15:31:37 +0000 (Sat, 02 Feb 2008)
New Revision: 17468

Modified:
   trunk/freenet/src/freenet/node/Version.java
Log:
1108: (mandatory Tuesday)
Startup performance:
- Add some Thread.yield()s: sadly java doesn't use thread priorities on linux, 
and the important threads get starved of CPU by the splitfile restarts. :(
Client layer:
- Prevent IllegalArgumentException, log an error instead when getKey() is null 
in SendableGet.
- SplitFileFetcherSubSegment: Cancel self in possiblyRemoveFromParent(). May 
help to fix key <num> is null.
- SplitFileFetcherSegment: Actually remove the sub-segments from the array in 
removeSubSegments() instead of killing them and keeping them. Saves memory, 
avoids problems.
- Throw on adding blocks to a cancelled segment.
- SingleFileFetcher: Clear metadata when fetching a splitfile or multi-level 
metadata. So the Metadata and keys hanging off it can be GC'ed when no longer 
used by the splitfile.
Messaging:
- Prevent double-notify race condition on disconnect.
- Remove side-effect and just throw in anyConnectionsDropped().
- Improve synchronization in PeerNode.
- Some paranoia.
- Limit BitArray's to 2048 bytes to prevent garbage causing huge memory 
allocations.
Web interface:
- Increase priority of announcement notice.
Load management:
- Reduce ping time averager half-life to 4 minutes from 10. This should still 
be longer than an average request, but it should react faster.
- Report correct stats for received bytes on SSK inserts.
Connections page:
- Trivial formatting fix in the congestion control column.
Routing:
- Optimise closerPeer().
- Make Location.distance(,,true) work well for invalid values used by e.g. 
probe requests.
Swapping:
- Make PeerNode.shouldRejectSwapRequest() non-probabilistic.
- And actually record the time we last accepted a swap request. (Note that 
because of this it was always accepting before, now it will almost always 
accept).
Probe requests:
- Implement simple threaded probe requests using the current HTL and routing 
algorithm, close to Request*.
IP detection logic:
- Trivial code cleanups.
- Minor refactoring.
- Don't count localhost and LAN addresses, or nodes with the same IP address as 
one of ours, towards if-no-conns-we-must-detect.
- If we have no connections, and have lost 3+ connections recently, we should 
do a detection immediately regardless of the 1 detection per hour limit (but 
only one, so don't do it if we've detected in the last 6 minutes).
- Delete the fake-detection mechanism which never worked for its original 
purpose. The above takes its place.
- Detect immediately (once) if behind a SNAT.
- Clear the failed-to-detect flag after any successful detection. We were 
detecting every 5 minutes forever after any failed detection because of this 
bug.
- maybeRun(): Don't waste time and don't detect twice.
- Fake IP detection code: was kicking in when we have 1 or 2 connections which 
are either disconnected OR have received packets in last 5min. Should be if we 
have 1 or 2 conns and they are BOTH disconnected AND have received packets in 
last 5min.
Web interface:
- Update TUFI to edition 11.
L10n etc:
- French update (batosai).
- German update (NEOatNHNG).
- Italian update from _ph00.
- Add Danish to the list of available translations even though it's incomplete. 
So's Polish.
- Improve the wording of the warning at the bottom of the wizard page asking 
whether to turn on opennet.
- Delete the confusing example of [14:56] <toad_> from the friends page.
FCP:
- Revert an unnecessary code complication (r17325) related to closing 
connections.
Dev stuff:
- toString().
- Logging.
- Logger: Indicate explicitly if no stack trace. Add missing \n if null stack 
trace.
- Add shortToString() to PeerContext.
- Change visibility of BaseSingleFileFetcher so can subclass in plugins.
- Delete some dijjer cruft in RetrievalException.
- Comments.
- Rename InsertHandler to CHKInsertHandler.
- Dead code deletion.
- Remove constructors for dead old probe request messages.
- Comments.
Insert/Request Simulator:
- Logging.
- Try to request key even if the insert fails.

XMLSpider:
- Version 17: Split both by number of elements and by the size of the 
subindexes (and don't try to split for the latter below having 1 word in the 
index). Max subindex size 256k.

batosai
NEOatNHNG
_ph00
robert
saces
toad

Modified: trunk/freenet/src/freenet/node/Version.java
===================================================================
--- trunk/freenet/src/freenet/node/Version.java 2008-02-02 14:06:35 UTC (rev 
17467)
+++ trunk/freenet/src/freenet/node/Version.java 2008-02-02 15:31:37 UTC (rev 
17468)
@@ -24,17 +24,17 @@
        public static final String protocolVersion = "1.0";

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

        /** Oldest build of Fred we will talk to */
        private static final int oldLastGoodBuild = 1106;
-       private static final int newLastGoodBuild = 1107;
+       private static final int newLastGoodBuild = 1108;
        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, 30, 0, 0, 0 );
+               _cal.set( 2008, Calendar.FEBRUARY, 5, 0, 0, 0 );
                transitionTime = _cal.getTimeInMillis();
        }



Reply via email to