release 0.56 (and some last fixes)

- fixed bad peer hash computation in case no peer list is avaiable upon first startup
- security minimum waiting time in search result preparation
- removed dead superseed link

git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@4290 6c8d7289-2bf4-0310-a012-ef5d649a1542
pull/1/head
orbiter 17 years ago
parent d517e96714
commit db0d3d5e54

@ -3,7 +3,7 @@ javacSource=1.4
javacTarget=1.4
# Release Configuration
releaseVersion=0.557
releaseVersion=0.56
stdReleaseFile=yacy_v${releaseVersion}_${DSTAMP}_${releaseNr}.tar.gz
embReleaseFile=yacy_emb_v${releaseVersion}_${DSTAMP}_${releaseNr}.tar.gz
proReleaseFile=yacy_pro_v${releaseVersion}_${DSTAMP}_${releaseNr}.tar.gz

@ -502,7 +502,7 @@ public final class plasmaSearchEvent {
public resultWorker(int id, long maxlifetime) {
this.id = id;
this.lastLifeSign = System.currentTimeMillis();
this.timeout = System.currentTimeMillis() + maxlifetime;
this.timeout = System.currentTimeMillis() + Math.max(1000, maxlifetime);
this.sleeptime = Math.min(300, maxlifetime / 10 * id);
}
@ -629,6 +629,7 @@ public final class plasmaSearchEvent {
if ((rcAbstracts == null) || (rcAbstracts.size() != query.queryHashes.size())) return; // secondary search not possible (yet)
this.secondarySearchStartet = true;
/*
// catch up index abstracts and join them; then call peers again to submit their urls
System.out.println("DEBUG-INDEXABSTRACT: " + rcAbstracts.size() + " word references catched, " + query.queryHashes.size() + " needed");
@ -638,12 +639,12 @@ public final class plasmaSearchEvent {
entry = (Map.Entry) i.next();
System.out.println("DEBUG-INDEXABSTRACT: hash " + (String) entry.getKey() + ": " + ((query.queryHashes.contains((String) entry.getKey())) ? "NEEDED" : "NOT NEEDED") + "; " + ((TreeMap) entry.getValue()).size() + " entries");
}
*/
TreeMap abstractJoin = (rcAbstracts.size() == query.queryHashes.size()) ? kelondroMSetTools.joinConstructive(rcAbstracts.values(), true) : new TreeMap();
if (abstractJoin.size() == 0) {
System.out.println("DEBUG-INDEXABSTRACT: no success using index abstracts from remote peers");
//System.out.println("DEBUG-INDEXABSTRACT: no success using index abstracts from remote peers");
} else {
System.out.println("DEBUG-INDEXABSTRACT: index abstracts delivered " + abstractJoin.size() + " additional results for secondary search");
//System.out.println("DEBUG-INDEXABSTRACT: index abstracts delivered " + abstractJoin.size() + " additional results for secondary search");
// generate query for secondary search
TreeMap secondarySearchURLs = new TreeMap(); // a (peerhash:urlhash-liststring) mapping
Iterator i1 = abstractJoin.entrySet().iterator();
@ -656,7 +657,7 @@ public final class plasmaSearchEvent {
entry1 = (Map.Entry) i1.next();
url = (String) entry1.getKey();
peers = (String) entry1.getValue();
System.out.println("DEBUG-INDEXABSTRACT: url " + url + ": from peers " + peers);
//System.out.println("DEBUG-INDEXABSTRACT: url " + url + ": from peers " + peers);
mypeercount = 0;
for (int j = 0; j < peers.length(); j = j + 12) {
peer = peers.substring(j, j + 12);
@ -680,8 +681,8 @@ public final class plasmaSearchEvent {
if (peer.equals(mypeerhash)) continue; // we dont need to ask ourself
urls = (String) entry1.getValue();
words = wordsFromPeer(peer, urls);
System.out.println("DEBUG-INDEXABSTRACT ***: peer " + peer + " has urls: " + urls);
System.out.println("DEBUG-INDEXABSTRACT ***: peer " + peer + " from words: " + words);
//System.out.println("DEBUG-INDEXABSTRACT ***: peer " + peer + " has urls: " + urls);
//System.out.println("DEBUG-INDEXABSTRACT ***: peer " + peer + " from words: " + words);
secondarySearchThreads[c++] = yacySearch.secondaryRemoteSearch(
words, "", urls, wordIndex, this.rankedCache, peer, plasmaSwitchboard.urlBlacklist,
ranking, query.constraint, preselectedPeerHashes);

@ -694,15 +694,10 @@ public class yacySeed {
}
private static String bestNewHash(yacySeedDB seedDB) {
int con = seedDB.sizeConnected();
if (con == 0) return positionToHash(0.0);
if (con == 1) return positionToHash(0.5);
if (con == 2) return positionToHash(0.25);
if (con == 3) return positionToHash(0.75);
if (con == 4) return positionToHash(0.125);
if (con == 5) return positionToHash(0.625);
if (con == 6) return positionToHash(0.375);
if (con == 7) return positionToHash(0.875);
if ((seedDB == null) || (seedDB.sizeConnected() <= 8)) {
// use random hash
return randomHash();
}
int tries = Math.max(1, Math.min(32, seedDB.sizeConnected() / 2));
String hash;

@ -55,12 +55,11 @@ network.unit.domain = global
network.unit.search.time = 4
network.unit.dhtredundancy.junior = 1
network.unit.dhtredundancy.senior = 3
network.unit.bootstrap.seedlist0 = http://de.geocities.com/d15511z/yacy/angel/seed.txt
network.unit.bootstrap.seedlist0 = http://www.yacy.net/seed.txt
network.unit.bootstrap.seedlist1 = http://home.arcor.de/hermens/yacy/seed.txt
network.unit.bootstrap.seedlist2 = http://low.audioattack.de/yacy/seed.txt
network.unit.bootstrap.seedlist3 = http://www.lulabad.de/seed.txt
network.unit.bootstrap.seedlist4 = http://www.yacy.net/seed.txt
network.unit.bootstrap.seedlist5 = http://www.marcelhenseler.de/yacy/seed.txt
network.unit.bootstrap.seedlist4 = http://www.marcelhenseler.de/yacy/seed.txt
# each network may use different yacy distributions.
# the auto-updater can access network-specific update locations

Loading…
Cancel
Save