Author: toad
Date: 2008-12-12 15:31:50 +0000 (Fri, 12 Dec 2008)
New Revision: 24263

Modified:
   trunk/freenet/src/freenet/node/Version.java
Log:
1193: (mandatory tuesday)
Opennet:
- Don't add to the old-opennet-peers list unless the node was droppable and 
wasn't actually dropped. I.e. don't add if it was dropped from the end of the 
LRU.
- Reduce max old-opennet-peers to 25.
- Constantly attempt to contact old-opennet-peers, after 30 seconds after 
startup. This costs us up to 500 bytes per second, but should result in faster 
reconnects on opennet for nodes that were actually useful. Fetch ARKs if no 
contact details.
- Drop excess opennet peers whenever a node connects, darknet or opennet.
- Enforce the connection limit more strongly. If we are over the limit, drop 
peers even if they are not droppable (after first trying to find a droppable 
peer).
- If we connect to an old-opennet-peer, then don't want it, remove it from the 
old-opennet-peers list.
- When considering whether to decode a packet that might be from an 
old-opennet-peer, ignore the offer frequency limit.
- 30 second interval between accepting old-opennet-peer connections. Between 
that, we don't reject them but we don't decode the incoming packets.
- When an old-opennet-peer reconnects, add it to the top of the LRU, not the 
bottom. It wasn't dropped from the bottom, and we don't want it to be 
immediately dropped from the bottom.
- Tell the other side to purge from the old-opennet-peers list when we drop a 
node from the bottom of the LRU, and when we reconnect and don't want the peer, 
and when opennet is turned off while connecting to seednodes. It won't be able 
to reconnect, so trying would just be wasting bandwidth, and wasting a slot 
that could be used by a viable peer.
- Stop trying to reconnect to an old-opennet-peer after a month. I had thought 
a week, but reconnecting is very useful ...
- Logging fixes related to trying to contact nodes which aren't in the routing 
table.
- Ensure that PeerNode.onConnected() gets called by setting wasDisconnected to 
false on startup. onConnected() calls dropExcessPeers, as well as sending 
N2NTMs on darknet peers etc.
Connectivity:
- Fix multi-homing connection setup: We were dividing the interval between 
packet sends by the number of addresses (with a minimum of 3s), which is 
correct, but we were ignoring the result and going with the base delay. Likely 
impact: Nodes with always allow local addresses enabled would have a much 
longer inter-handshake delay which might cause problems on some NATs.
- Only send a packet if we are allowed to send a packet in the packet sender 
loop. We were sending one anyway and then only accounting for it if we were 
allowed to send it!
Web interface:
- Bookmarks: update bookmark editions.
- Public gateway mode: If enabled, connections which are allowed but not full 
access are unable to POST, and unable to access the queue page, the queue page 
doesn't show up, and we disable the ability to override the max file size to 
stream to the browser i.e. it is not possible to fetch files over 2MB.
- Show the download in background button if we are allowed to use the queue 
page, not only if we have full access.
- Refactor: Don't use getContainer(), use the member variable container.
- On the too large error page: Show a back-to-previous-page link.
Dev stuff:
- Remove unused variables.
- Comments, javadocs.
- Logging.
- toString()s.
- MultiValueTable.iterateAll(key), used by some of xor's code.

XMLSpider:
- Major refactoring for db4o support. So far just reduces memory footprint, 
resume does not work yet, we delete the db file on start and exit.
- Attempt to call the constructor when instantiating a Page.
- Reduce MAX_ENTRIES to 800, this is consistent with a 4MB uncompressed limit.
- Estimate minimum prefix length.
- Don't retry 10 times and end up on the download queue, set retries to 2 and 
then manually implement more. Some changes to retry logic, we seem to be 
retrying indefinitely.
- Retry by adding to end of queue, not immediately.
- Encode URIs properly in UI.
- Trivial simplifications.
- Save memory: Move lastPosition to the inner class doing the parsing.
- Don't fetch keys with known not to be interesting extensions - css, png etc. 
Will avoid fetching some linked CHKs' top levels so worth it.
- Remember where we got a URI from in a comment field for debugging.
- Prior, some of which has been deleted:
- Fix bug #2774: ArrayIndexOutOfBoundsException when no page in prefix.
- Don't use Runtime.exec("mkdir <dir>"). Wasn't exploitable as the argument was 
a constant. But hideous nonetheless.
- Delete unused fields sizeOfURIs, mimeOfURIs.
- Use long's for document IDs, not ints.
- Generics.
- Autoboxing.
- Minor String optimisations.
- Get rid of gratuitous new String(<string constant>)'s.
- Use List, use subList.
- Use FreenetURI.isUSK etc.
- Remove unused methods from old plugin API.
- Comments.
- Logging.

Website:
- Add a link to freenet.uservoice.com.
- Clarify the freemail page.

ian
esr
sdiz
toad


Modified: trunk/freenet/src/freenet/node/Version.java
===================================================================
--- trunk/freenet/src/freenet/node/Version.java 2008-12-12 15:17:37 UTC (rev 
24262)
+++ trunk/freenet/src/freenet/node/Version.java 2008-12-12 15:31:50 UTC (rev 
24263)
@@ -24,17 +24,17 @@
        public static final String protocolVersion = "1.0";
 
        /** The build number of the current revision */
-       private static final int buildNumber = 1192;
+       private static final int buildNumber = 1193;
 
        /** Oldest build of Fred we will talk to */
-       private static final int oldLastGoodBuild = 1190;
-       private static final int newLastGoodBuild = 1192;
+       private static final int oldLastGoodBuild = 1192;
+       private static final int newLastGoodBuild = 1193;
        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.DECEMBER, 12, 0, 0, 0 );
+               _cal.set( 2008, Calendar.DECEMBER, 16, 0, 0, 0 );
                transitionTime = _cal.getTimeInMillis();
        }
        

_______________________________________________
cvs mailing list
[email protected]
http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs

Reply via email to