Author: toad
Date: 2007-09-21 16:41:09 +0000 (Fri, 21 Sep 2007)
New Revision: 15239
Modified:
trunk/freenet/src/freenet/node/Version.java
Log:
1063: (Mandatory 28 September 0:00 GMT for probe requests fixes and USK polling
reduction, would be sooner but UOM is broken in 1062...)
Fix Update-Over-Mandatory!
- It broke in a fairly recent commit.
- Bug: We weren't reporting received packet if there was no payload. Problem
with this is that the connection will get closed. And if the connection was
incompatible in the first place, it's unlikely there will be payload.
Therefore, UOM broke, after nextgens' recent fix to PacketSender (drop
connections which don't respond even if they are incompatible).
Opennet:
- When we served a CHK from the local cache/store, if on a darknet node with
relay-opennet-refs enabled, we weren't sending an FNPOpennetCompletedAck. This
was resulting in timeouts where we could have sent more noderefs downstream.
Opennet-related:
- Track opennet peer node statuses and overall peer node statuses separately.
- Only warn the user about excess not connected nodes etc if they are darknet
nodes.
- When recommending that the user forward the FNP port, mention both ports if
opennet is enabled.
Explicit disconnect:
- Add an explicit disconnect message. When we remove a node, we can now tell
that node to remove us as well. This is useful for both darknet (obviously) and
opennet (removing a node because it's at the bottom of the LRU, we don't want
to talk to it for the time being; means the other end can acquire a new
connection more quickly). Parting N2NTM's are supported but not yet implemented
on sending (need UI for this).
- The message can also indicate whether to purge all references to the node
(e.g. in an opennet reconnect cache), and whether to remove it from the routing
table.
- Tell our peers when we are shutting down. Allows them to dump our old message
state. Don't make any new connections once we've started shutting down.
- Indicate on connections page etc which nodes are disconnecting i.e. we've
started to disconnect from them but not completed yet because e.g. we are
waiting to send them a message telling them to disconnect from us.
Client layer:
- Fix a deadlock when starting a persistent directory insert.
- USK background polling: We were doing so many requests for polled USKs that
no SSK request below priority 3 would ever be executed!
-- Much lower priority - UPDATE (3) first time or when have just advanced,
PREFETCH (5) at other times.
-- Sleep for much longer between polling - 5 mins up to 24 hours rather than 1
second up to 1 hour.
Bookmarks:
- Minor refactoring, minor optimisations.
- Fix "cannot delete bookmark" bug (caused by bad equals() not recognising self
due to bad key comparison logic - operator priorities!).
Misc:
- Synchronization fix in node.park() - don't hold the node lock while storing
the config to disk.
- L10n: don't tell the user the node has been shut down when it hasn't, it's
only in the process of shutting down.
Store:
- Increase database read buffers slightly to avoid having to read repeatedly to
get a btree node. (Why on earth does the database not always read a whole
node?!)
- Set je.evictor.lruOnly and je.evictor.nodesPerScan properties before loading
Environment. Their purpose is to keep internal nodes in RAM rather than
database objects.
Probe requests:
- We were passing a location to a method which expected a distance, causing
continual backtracking (since e.g. when tracing 0.0, some of the closest
locations will be around 0.9!).
- Refactoring - simplify logic that calculates whether to backtrack, delete
dead code.
Debugging:
- Imports
- Delete dead code
- Logging
- Unit tests build fix
- Comments, javadocs.
- Thread names for SingleFileFetcher async callbacks.
XMLSpider 14:
- Sync fixes.
- Disable inlinks/outlinks for now, we don't use or publish them.
JFK branch:
- Lots of work (I'm not reviewing it, that's nextgens job for the time being,
it will be reviewed when it is merged). Includes refactoring, comments,
bugfixes, core JFK changes, etc etc.
Echo: (Jflesch is primary code reviewer, this will be vague..)
- Split up pages, new separate XML/XSL..
- Add readme and license (GPL3+)
- Load XML files from the jar
- Javadocs
- Serialisation fixes (why do we not want to serialise the XHTML??)
- Bugfixes
Credits:
- nextgens
- kryptos
- caco_patane
- juiceman
- fred
- toad
Modified: trunk/freenet/src/freenet/node/Version.java
===================================================================
--- trunk/freenet/src/freenet/node/Version.java 2007-09-21 16:29:05 UTC (rev
15238)
+++ trunk/freenet/src/freenet/node/Version.java 2007-09-21 16:41:09 UTC (rev
15239)
@@ -24,17 +24,17 @@
public static final String protocolVersion = "1.0";
/** The build number of the current revision */
- private static final int buildNumber = 1062;
+ private static final int buildNumber = 1063;
/** Oldest build of Fred we will talk to */
- private static final int oldLastGoodBuild = 1056;
- private static final int newLastGoodBuild = 1058;
+ private static final int oldLastGoodBuild = 1058;
+ private static final int newLastGoodBuild = 1063;
static final long transitionTime;
static {
final Calendar _cal =
Calendar.getInstance(TimeZone.getTimeZone("GMT"));
// year, month - 1 (or constant), day, hour, minute, second
- _cal.set( 2007, Calendar.SEPTEMBER, 12, 0, 0, 0 );
+ _cal.set( 2007, Calendar.SEPTEMBER, 28, 0, 0, 0 );
transitionTime = _cal.getTimeInMillis();
}