diff --git a/htroot/Table_YMark_p.java b/htroot/Table_YMark_p.java index 482d6ca13..13bdae6aa 100644 --- a/htroot/Table_YMark_p.java +++ b/htroot/Table_YMark_p.java @@ -243,7 +243,7 @@ public class Table_YMark_p { final String tagsString = YMarkUtil.cleanTagsString(post.get(YMarkEntry.BOOKMARK.TAGS.key())); mapIterator = sb.tables.bookmarks.getBookmarksByTag(bmk_user, tagsString); } else { - mapIterator = sb.tables.orderByPK(sb.tables.iterator(table, matcher), maxcount).iterator(); + mapIterator = sb.tables.orderByPK(sb.tables.iterator(table, matcher), maxcount, false).iterator(); } Tables.Row row; diff --git a/htroot/Tables_p.java b/htroot/Tables_p.java index 640f38352..784c4da8a 100644 --- a/htroot/Tables_p.java +++ b/htroot/Tables_p.java @@ -160,7 +160,7 @@ public class Tables_p { count = 0; try { final Iterator plainIterator = sb.tables.iterator(table, matcher); - final Iterator mapIterator = sb.tables.orderByPK(plainIterator, maxcount).iterator(); + final Iterator mapIterator = sb.tables.orderByPK(plainIterator, maxcount, false).iterator(); Tables.Row row; boolean dark = true; byte[] cell; diff --git a/htroot/api/table_p.java b/htroot/api/table_p.java index 2df19a36d..ba7b3b2b1 100644 --- a/htroot/api/table_p.java +++ b/htroot/api/table_p.java @@ -155,7 +155,7 @@ public class table_p { int count = 0; try { final Iterator plainIterator = sb.tables.iterator(table, matcher); - final Iterator mapIterator = sb.tables.orderByPK(plainIterator, maxcount).iterator(); + final Iterator mapIterator = sb.tables.orderByPK(plainIterator, maxcount, false).iterator(); Tables.Row trow; boolean dark = true; String cellName, cellValue; diff --git a/source/net/yacy/crawler/CrawlSwitchboard.java b/source/net/yacy/crawler/CrawlSwitchboard.java index 82d1b0fc9..ce70b58e5 100644 --- a/source/net/yacy/crawler/CrawlSwitchboard.java +++ b/source/net/yacy/crawler/CrawlSwitchboard.java @@ -676,12 +676,10 @@ public final class CrawlSwitchboard { try { ret = new MapHeap(file, Word.commonHashLength, NaturalOrder.naturalOrder, 1024 * 64, 500, ' '); } catch (final IOException e ) { - ConcurrentLog.logException(e); ConcurrentLog.logException(e); FileUtils.deletedelete(file); try { - ret = - new MapHeap(file, Word.commonHashLength, NaturalOrder.naturalOrder, 1024 * 64, 500, ' '); + ret = new MapHeap(file, Word.commonHashLength, NaturalOrder.naturalOrder, 1024 * 64, 500, ' '); } catch (final IOException e1 ) { ConcurrentLog.logException(e1); ret = null; diff --git a/source/net/yacy/kelondro/blob/Tables.java b/source/net/yacy/kelondro/blob/Tables.java index 36a44d634..57418e880 100644 --- a/source/net/yacy/kelondro/blob/Tables.java +++ b/source/net/yacy/kelondro/blob/Tables.java @@ -454,14 +454,14 @@ public class Tables implements Iterable { return new RowIterator(table, wherePattern); } - public Collection orderByPK(final Iterator rowIterator, int maxcount) { + public Collection orderByPK(final Iterator rowIterator, int maxcount, boolean reverse) { final TreeMap sortTree = new TreeMap(); Row row; while ((maxcount < 0 || maxcount-- > 0) && rowIterator.hasNext()) { row = rowIterator.next(); sortTree.put(UTF8.String(row.pk), row); } - return sortTree.values(); + return reverse ? sortTree.descendingMap().values() : sortTree.values(); } public Collection orderBy(final Iterator rowIterator, int maxcount, final String sortColumn) {