From 3e31de16027fd16b7191a98b29454e5b329e8e72 Mon Sep 17 00:00:00 2001 From: zzz Date: Fri, 5 Jun 2009 23:17:15 +0000 Subject: [PATCH 1/6] tunnels.jsp cleanup --- .../src/net/i2p/router/tunnel/pool/TunnelPoolManager.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/router/java/src/net/i2p/router/tunnel/pool/TunnelPoolManager.java b/router/java/src/net/i2p/router/tunnel/pool/TunnelPoolManager.java index fc34ab5fc..9845a72f3 100644 --- a/router/java/src/net/i2p/router/tunnel/pool/TunnelPoolManager.java +++ b/router/java/src/net/i2p/router/tunnel/pool/TunnelPoolManager.java @@ -458,7 +458,7 @@ public class TunnelPoolManager implements TunnelManagerFacade { else out.write("n/a"); if (cfg.getReceiveFrom() != null) - out.write("" + netDbLink(cfg.getReceiveFrom()) +""); + out.write("" + netDbLink(cfg.getReceiveFrom()) +""); else out.write(" "); if (cfg.getSendTunnel() != null) @@ -466,7 +466,7 @@ public class TunnelPoolManager implements TunnelManagerFacade { else out.write(" "); if (cfg.getSendTo() != null) - out.write("" + netDbLink(cfg.getSendTo()) +""); + out.write("" + netDbLink(cfg.getSendTo()) +""); else out.write(" "); long timeLeft = cfg.getExpiration()-_context.clock().now(); @@ -603,7 +603,7 @@ public class TunnelPoolManager implements TunnelManagerFacade { out.write("

Tunnel Counts By Peer:

\n"); out.write("\n"); for (Hash h : peerList) { - out.write("
PeerExpl. + Client% of totalPart. from + to% of total
"); + out.write("
"); out.write(netDbLink(h)); out.write("" + lc.count(h)); out.write(""); From 7e651d53a0c6af8d81d577adf3efa7e92462e387 Mon Sep 17 00:00:00 2001 From: zzz Date: Fri, 5 Jun 2009 23:43:10 +0000 Subject: [PATCH 2/6] netdb.jsp cleanup --- .../networkdb/kademlia/KademliaNetworkDatabaseFacade.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/KademliaNetworkDatabaseFacade.java b/router/java/src/net/i2p/router/networkdb/kademlia/KademliaNetworkDatabaseFacade.java index 37503ecac..31d6dc04b 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/KademliaNetworkDatabaseFacade.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/KademliaNetworkDatabaseFacade.java @@ -1069,8 +1069,8 @@ public class KademliaNetworkDatabaseFacade extends NetworkDatabaseFacade { buf.append("Address(es): "); String country = _context.commSystem().getCountry(info.getIdentity().getHash()); if(country != null) { - buf.append(" \"").append(country.toUpperCase()).append("\"");"); + buf.append("\"").append(country.toUpperCase()).append("\""); "); } for (Iterator iter = info.getAddresses().iterator(); iter.hasNext(); ) { RouterAddress addr = (RouterAddress)iter.next(); From 4c4b3b776c4efd1cd81f4450d3465e2e5545ee20 Mon Sep 17 00:00:00 2001 From: zzz Date: Sat, 6 Jun 2009 15:14:05 +0000 Subject: [PATCH 3/6] Try to alleviate connection-limit network collapse: * Transport: - Lower min NTCP idle time to 3m (was 5m) - Increase SSU conn limit by 33% * Watchdog: - Defang him again --- router/java/src/net/i2p/router/RouterWatchdog.java | 6 +++--- router/java/src/net/i2p/router/transport/TransportImpl.java | 3 +++ .../java/src/net/i2p/router/transport/ntcp/EventPumper.java | 3 ++- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/router/java/src/net/i2p/router/RouterWatchdog.java b/router/java/src/net/i2p/router/RouterWatchdog.java index cb1681022..0ad5a2c41 100644 --- a/router/java/src/net/i2p/router/RouterWatchdog.java +++ b/router/java/src/net/i2p/router/RouterWatchdog.java @@ -49,8 +49,8 @@ class RouterWatchdog implements Runnable { } private boolean shutdownOnHang() { - // prop default true - if (!Boolean.valueOf(_context.getProperty("watchdog.haltOnHang", "true")).booleanValue()) + // prop default false + if (!Boolean.valueOf(_context.getProperty("watchdog.haltOnHang")).booleanValue()) return false; // Client manager starts complaining after 10 minutes, and we run every minute, @@ -94,7 +94,7 @@ class RouterWatchdog implements Runnable { long used = Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory(); _log.error("Memory: " + DataHelper.formatSize(used) + '/' + DataHelper.formatSize(max)); if (_consecutiveErrors == 1) { - _log.log(Log.CRIT, "Router appears hung! Will restart in 20 minutes if it doesn't fix itself"); + _log.log(Log.CRIT, "Router appears hung, or there is severe network congestion. Watchdog starts barking!"); // This might work on linux... // It won't on windows, and we can't call i2prouter.bat either, it does something // completely different... diff --git a/router/java/src/net/i2p/router/transport/TransportImpl.java b/router/java/src/net/i2p/router/transport/TransportImpl.java index 77a9bf323..2dbd9af3a 100644 --- a/router/java/src/net/i2p/router/transport/TransportImpl.java +++ b/router/java/src/net/i2p/router/transport/TransportImpl.java @@ -106,6 +106,9 @@ public abstract class TransportImpl implements Transport { ! ((FloodfillNetworkDatabaseFacade)_context.netDb()).floodfillEnabled()) def = MAX_CONNECTION_FACTOR * (1 + bw - Router.CAPABILITY_BW12); } + // increase limit for SSU, for now + if (style.equals("udp")) + def = def * 4 / 3; return _context.getProperty("i2np." + style + ".maxConnections", def); } diff --git a/router/java/src/net/i2p/router/transport/ntcp/EventPumper.java b/router/java/src/net/i2p/router/transport/ntcp/EventPumper.java index 24ac63c6b..3f9e5acfc 100644 --- a/router/java/src/net/i2p/router/transport/ntcp/EventPumper.java +++ b/router/java/src/net/i2p/router/transport/ntcp/EventPumper.java @@ -51,7 +51,8 @@ public class EventPumper implements Runnable { * the time to iterate across them to check a few flags shouldn't be a problem. */ private static final long FAILSAFE_ITERATION_FREQ = 2*1000l; - private static final long MIN_EXPIRE_IDLE_TIME = 5*60*1000l; + /** tunnel test is every 30-60s, so this should be longer than, say, 3*45s to allow for drops */ + private static final long MIN_EXPIRE_IDLE_TIME = 3*60*1000l; private static final long MAX_EXPIRE_IDLE_TIME = 15*60*1000l; public EventPumper(RouterContext ctx, NTCPTransport transport) { From 834bfde45cca74095d2723a0960b717a320e98ff Mon Sep 17 00:00:00 2001 From: zzz Date: Sat, 6 Jun 2009 16:34:32 +0000 Subject: [PATCH 4/6] * Timestamper: Use locale country if geoip unavailable --- core/java/src/net/i2p/time/Timestamper.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/core/java/src/net/i2p/time/Timestamper.java b/core/java/src/net/i2p/time/Timestamper.java index 356689f85..b3f5290e3 100644 --- a/core/java/src/net/i2p/time/Timestamper.java +++ b/core/java/src/net/i2p/time/Timestamper.java @@ -2,6 +2,7 @@ package net.i2p.time; import java.util.ArrayList; import java.util.List; +import java.util.Locale; import java.util.StringTokenizer; import net.i2p.I2PAppContext; @@ -246,7 +247,12 @@ public class Timestamper implements Runnable { if ( (serverList == null) || (serverList.trim().length() <= 0) ) { serverList = DEFAULT_SERVER_LIST; String country = _context.getProperty(PROP_IP_COUNTRY); - if (country != null) { + if (country == null) { + country = Locale.getDefault().getCountry(); + if (country != null) + country = country.toLowerCase(); + } + if (country != null && country.length() > 0) { _priorityServers = new ArrayList(3); for (int i = 0; i < 3; i++) _priorityServers.add(i + "." + country + ".pool.ntp.org"); From 1202a303b7bbc239d2394979615c76c1d9559475 Mon Sep 17 00:00:00 2001 From: zzz Date: Sat, 6 Jun 2009 18:40:49 +0000 Subject: [PATCH 5/6] Fix UPnP deprecation --- router/java/src/org/cybergarage/xml/Parser.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/router/java/src/org/cybergarage/xml/Parser.java b/router/java/src/org/cybergarage/xml/Parser.java index 2c9b3861b..0268f3e29 100644 --- a/router/java/src/org/cybergarage/xml/Parser.java +++ b/router/java/src/org/cybergarage/xml/Parser.java @@ -104,7 +104,7 @@ public abstract class Parser public Node parse(String descr) throws ParserException { try { - StringBufferInputStream decrIn = new StringBufferInputStream(descr); + InputStream decrIn = new ByteArrayInputStream(descr.getBytes()); Node root = parse(decrIn); return root; } catch (Exception e) { From dcaa0594f1111f0e1d7bcccaed3b3ec25e6b38a0 Mon Sep 17 00:00:00 2001 From: zzz Date: Sun, 7 Jun 2009 14:13:01 +0000 Subject: [PATCH 6/6] Add updaterWithJettyFixesAndGeoIP, use it for pkg for one release --- build.xml | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/build.xml b/build.xml index 04c443dd5..919a0342e 100644 --- a/build.xml +++ b/build.xml @@ -18,6 +18,7 @@ + @@ -201,7 +202,8 @@ - + + @@ -321,24 +323,20 @@ - + - - - - - - + + @@ -376,7 +374,7 @@ - +