diff --git a/build.properties b/build.properties index 7a15e03bc..3cc72ff81 100644 --- a/build.properties +++ b/build.properties @@ -3,7 +3,7 @@ javacSource=1.4 javacTarget=1.4 # Release Configuration -releaseVersion=0.381 +releaseVersion=0.382 releaseFile=yacy_dev_v${releaseVersion}_${DSTAMP}_${releaseNr}.tar.gz #releaseFile=yacy_v${releaseVersion}_${DSTAMP}_${releaseNr}.tar.gz releaseDir=yacy_dev_v${releaseVersion}_${DSTAMP}_${releaseNr} diff --git a/htroot/Status.html b/htroot/Status.html index dcb6929cb..cf3c510f9 100644 --- a/htroot/Status.html +++ b/htroot/Status.html @@ -107,12 +107,14 @@ you must switch off the proxy to go off-line. #(/omode)# Memory Usage -free: #[freeMemory]# | total: #[totalMemory]# | max: #[maxMemory]# +
free: #[freeMemory]# | total: #[totalMemory]# | max: #[maxMemory]# |
- Traffic In: #[trafficIn]# | Out: #[trafficOut]# +System Resources +processors: #[processors]# + diff --git a/htroot/Status.java b/htroot/Status.java index 5b3add157..a0bb01324 100644 --- a/htroot/Status.java +++ b/htroot/Status.java @@ -56,47 +56,47 @@ import de.anomic.yacy.yacyCore; public class Status { public static serverObjects respond(httpHeader header, serverObjects post, serverSwitch env) { - // return variable that accumulates replacements - serverObjects prop = new serverObjects(); - - // set values - String s; - int pos; - - /* - versionProbe=http://www.anomic.de/AnomicHTTPProxy/release.txt - superseedFile=superseed.txt - */ + // return variable that accumulates replacements + serverObjects prop = new serverObjects(); + + // set values + String s; + int pos; + + /* + versionProbe=http://www.anomic.de/AnomicHTTPProxy/release.txt + superseedFile=superseed.txt + */ // update seed info yacyCore.peerActions.updateMySeed(); - - // password protection - if (env.getConfig("adminAccountBase64MD5", "").length() == 0) - prop.put("protection", 0);//not protected - else - prop.put("protection", 1);//protected - - // version information - if ((yacyCore.latestVersion == null) || (yacyCore.latestVersion.length() < 3) || (yacyCore.latestVersion.equals(env.getConfig("version","")))) - prop.put("versioncomment", 0);//no commet - else - prop.put("versioncomment", 1);//new version - prop.put("versioncomment_latestVersion", yacyCore.latestVersion); - - prop.put("host", serverCore.publicIP()); - prop.put("port", env.getConfig("port", "")); - if (env.getConfig("remoteProxyUse", "false").equals("true")) { - prop.put("remoteProxy", 1); - prop.put("remoteProxy_host", env.getConfig("remoteProxyHost", "")); - prop.put("remoteProxy_port", env.getConfig("remoteProxyPort", "")); - } else { - prop.put("remoteProxy", 0);//not used - } - - // peer information - String thisHash = ""; - String thisName = env.getConfig("peerName", ""); - if (yacyCore.seedDB.mySeed == null) { + + // password protection + if (env.getConfig("adminAccountBase64MD5", "").length() == 0) + prop.put("protection", 0);//not protected + else + prop.put("protection", 1);//protected + + // version information + if ((yacyCore.latestVersion == null) || (yacyCore.latestVersion.length() < 3) || (yacyCore.latestVersion.equals(env.getConfig("version","")))) + prop.put("versioncomment", 0);//no commet + else + prop.put("versioncomment", 1);//new version + prop.put("versioncomment_latestVersion", yacyCore.latestVersion); + + prop.put("host", serverCore.publicIP()); + prop.put("port", env.getConfig("port", "")); + if (env.getConfig("remoteProxyUse", "false").equals("true")) { + prop.put("remoteProxy", 1); + prop.put("remoteProxy_host", env.getConfig("remoteProxyHost", "")); + prop.put("remoteProxy_port", env.getConfig("remoteProxyPort", "")); + } else { + prop.put("remoteProxy", 0);//not used + } + + // peer information + String thisHash = ""; + String thisName = env.getConfig("peerName", ""); + if (yacyCore.seedDB.mySeed == null) { thisHash = "not assigned"; prop.put("peerAddress", 0);//not assigned prop.put("peerStatistics", 0);//unknown @@ -120,66 +120,69 @@ public class Status { prop.put("peerAddress_peername", env.getConfig("peerName", "").toLowerCase()); } } - String peerStatus = ((yacyCore.seedDB.mySeed == null) ? "virgin" : yacyCore.seedDB.mySeed.get("PeerType", "virgin")); - if (peerStatus.equals("virgin")) { - prop.put("peerStatus", 0);//virgin - } else if (peerStatus.equals("junior")) { - prop.put("peerStatus", 1);//junior - } else if (peerStatus.equals("senior")) { - prop.put("peerStatus", 2);//senior - } else if (peerStatus.equals("principal")) { - prop.put("peerStatus", 3);//principal - prop.put("peerStatus_seedURL", yacyCore.seedDB.mySeed.get("seedURL", "?")); - } - prop.put("peerName", thisName); - prop.put("hash", thisHash); - if ((env.getConfig("seedFTPServer","").length() != 0) && - (env.getConfig("seedFTPAccount","").length() != 0) && - (env.getConfig("seedFTPPassword","").length() != 0) && - (env.getConfig("seedFTPPath","").length() != 0)) { - prop.put("seedServer", 1);//enabled - prop.put("seedServer_seedFTPServer", env.getConfig("seedFTPServer","")); - } else { - prop.put("seedServer", 0);//disabled - } - - if ((yacyCore.seedDB != null) && (yacyCore.seedDB.sizeConnected() > 0)){ - prop.put("otherPeers", 1); - prop.put("otherPeers_num", yacyCore.seedDB.sizeConnected()); - }else{ - prop.put("otherPeers", 0);//not online - } - - // pop-up trigger management - if (post != null) { - if (post.containsKey("dispop")) env.setConfig("browserPopUpTrigger", "false"); - if (post.containsKey("enpop")) env.setConfig("browserPopUpTrigger", "true"); - } - - if (env.getConfig("browserPopUpTrigger", "false").equals("false")) { - prop.put("popup", 0); - } else { - prop.put("popup", 1); - } - - if (env.getConfig("onlineMode", "1").equals("1")) { - prop.put("omode", 1); - } else { - prop.put("omode", 2); - } + String peerStatus = ((yacyCore.seedDB.mySeed == null) ? "virgin" : yacyCore.seedDB.mySeed.get("PeerType", "virgin")); + if (peerStatus.equals("virgin")) { + prop.put("peerStatus", 0);//virgin + } else if (peerStatus.equals("junior")) { + prop.put("peerStatus", 1);//junior + } else if (peerStatus.equals("senior")) { + prop.put("peerStatus", 2);//senior + } else if (peerStatus.equals("principal")) { + prop.put("peerStatus", 3);//principal + prop.put("peerStatus_seedURL", yacyCore.seedDB.mySeed.get("seedURL", "?")); + } + prop.put("peerName", thisName); + prop.put("hash", thisHash); + if ((env.getConfig("seedFTPServer","").length() != 0) && + (env.getConfig("seedFTPAccount","").length() != 0) && + (env.getConfig("seedFTPPassword","").length() != 0) && + (env.getConfig("seedFTPPath","").length() != 0)) { + prop.put("seedServer", 1);//enabled + prop.put("seedServer_seedFTPServer", env.getConfig("seedFTPServer","")); + } else { + prop.put("seedServer", 0);//disabled + } + + if ((yacyCore.seedDB != null) && (yacyCore.seedDB.sizeConnected() > 0)){ + prop.put("otherPeers", 1); + prop.put("otherPeers_num", yacyCore.seedDB.sizeConnected()); + }else{ + prop.put("otherPeers", 0);//not online + } + + Runtime rt = Runtime.getRuntime(); - // memory usage - Runtime rt = Runtime.getRuntime(); - prop.put("freeMemory", bytesToString(rt.freeMemory())); - prop.put("totalMemory", bytesToString(rt.totalMemory())); - prop.put("maxMemory", bytesToString(rt.maxMemory())); - - // proxy traffic - prop.put("trafficIn",bytesToString(httpdByteCountInputStream.getGlobalCount())); - prop.put("trafficOut",bytesToString(httpdByteCountOutputStream.getGlobalCount())); - - // return rewrite properties - return prop; + // pop-up trigger management and gc + if (post != null) { + if (post.containsKey("dispop")) env.setConfig("browserPopUpTrigger", "false"); + if (post.containsKey("enpop")) env.setConfig("browserPopUpTrigger", "true"); + if (post.containsKey("gc")) rt.gc(); + } + + if (env.getConfig("browserPopUpTrigger", "false").equals("false")) { + prop.put("popup", 0); + } else { + prop.put("popup", 1); + } + + if (env.getConfig("onlineMode", "1").equals("1")) { + prop.put("omode", 1); + } else { + prop.put("omode", 2); + } + + // memory usage and system attributes + prop.put("freeMemory", bytesToString(rt.freeMemory())); + prop.put("totalMemory", bytesToString(rt.totalMemory())); + prop.put("maxMemory", bytesToString(rt.maxMemory())); + prop.put("processors", rt.availableProcessors()); + + // proxy traffic + prop.put("trafficIn",bytesToString(httpdByteCountInputStream.getGlobalCount())); + prop.put("trafficOut",bytesToString(httpdByteCountOutputStream.getGlobalCount())); + + // return rewrite properties + return prop; } public static String intervalToString(String minsAsString) diff --git a/source/yacy.java b/source/yacy.java index d53a51ecd..aaf74da9e 100644 --- a/source/yacy.java +++ b/source/yacy.java @@ -469,10 +469,14 @@ public final class yacy { } private static void checkMigrate(File dbroot, serverLog log, File file, plasmaWordIndex wordIndex) throws IOException { + long length = file.length(); + if (length > 3000) { + log.logInfo("SKIPPED " + file.toString() + ": too big, size=" + (length / 1024) + "kb"); + return; + } kelondroTree db = new kelondroTree(file, 0); String wordhash = file.getName().substring(0, 12); int size = db.size(); - long length = file.length(); db.close(); if (size <= 50) { plasmaWordIndexEntryContainer container = new plasmaWordIndexEntryContainer(wordhash);