More updates for the sorting feature.
Project: http://git-wip-us.apache.org/repos/asf/incubator-blur/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-blur/commit/2f8179cb Tree: http://git-wip-us.apache.org/repos/asf/incubator-blur/tree/2f8179cb Diff: http://git-wip-us.apache.org/repos/asf/incubator-blur/diff/2f8179cb Branch: refs/heads/apache-blur-0.2 Commit: 2f8179cb5830115a6c255de49f88ef50a9ddb21d Parents: 3b36b78 Author: Aaron McCurry <[email protected]> Authored: Tue Jan 28 13:01:33 2014 -0500 Committer: Aaron McCurry <[email protected]> Committed: Tue Jan 28 13:01:33 2014 -0500 ---------------------------------------------------------------------- .../org/apache/blur/manager/IndexManager.java | 4 +- .../results/BlurResultIterableSearcher.java | 16 +- .../results/BlurResultIterableSimple.java | 1 - .../BlurResultPeekableIteratorComparator.java | 26 + .../java/org/apache/blur/utils/BlurUtil.java | 6 + ...lurResultPeekableIteratorComparatorTest.java | 7 +- .../results/MultipleBlurResultIterableTest.java | 125 ++- .../blur/lucene/search/IterablePaging.java | 8 +- .../lucene/search/TestingPagingCollector.java | 6 +- .../org/apache/blur/thrift/generated/Blur.java | 720 ++++++++--------- .../blur/thrift/generated/BlurQueryStatus.java | 48 +- .../blur/thrift/generated/BlurResult.java | 174 ++++- .../blur/thrift/generated/BlurResults.java | 148 ++-- .../blur/thrift/generated/ColumnDefinition.java | 44 +- .../apache/blur/thrift/generated/Metric.java | 132 ++-- .../blur/thrift/generated/RowMutation.java | 36 +- .../apache/blur/thrift/generated/Schema.java | 88 +-- .../apache/blur/thrift/generated/SortField.java | 620 +++++++++++++++ .../blur/thrift/generated/TableDescriptor.java | 152 ++-- .../org/apache/blur/thrift/generated/User.java | 44 +- .../src/main/scripts/interface/Blur.thrift | 15 +- .../main/scripts/interface/gen-html/Blur.html | 13 +- .../main/scripts/interface/gen-html/index.html | 1 + .../org/apache/blur/thrift/generated/Blur.java | 720 ++++++++--------- .../blur/thrift/generated/BlurQueryStatus.java | 48 +- .../blur/thrift/generated/BlurResult.java | 174 ++++- .../blur/thrift/generated/BlurResults.java | 148 ++-- .../blur/thrift/generated/ColumnDefinition.java | 44 +- .../apache/blur/thrift/generated/Metric.java | 132 ++-- .../blur/thrift/generated/RowMutation.java | 36 +- .../apache/blur/thrift/generated/Schema.java | 88 +-- .../apache/blur/thrift/generated/SortField.java | 620 +++++++++++++++ .../blur/thrift/generated/TableDescriptor.java | 152 ++-- .../org/apache/blur/thrift/generated/User.java | 44 +- .../src/main/scripts/interface/gen-js/Blur.js | 640 +++++++-------- .../main/scripts/interface/gen-js/Blur_types.js | 769 +++++++++++-------- .../scripts/interface/gen-perl/Blur/Blur.pm | 416 +++++----- .../scripts/interface/gen-perl/Blur/Types.pm | 582 +++++++++----- .../main/scripts/interface/gen-rb/blur_types.rb | 58 +- docs/Blur.html | 13 +- 40 files changed, 4634 insertions(+), 2484 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/2f8179cb/blur-core/src/main/java/org/apache/blur/manager/IndexManager.java ---------------------------------------------------------------------- diff --git a/blur-core/src/main/java/org/apache/blur/manager/IndexManager.java b/blur-core/src/main/java/org/apache/blur/manager/IndexManager.java index 83f2b25..72366cb 100644 --- a/blur-core/src/main/java/org/apache/blur/manager/IndexManager.java +++ b/blur-core/src/main/java/org/apache/blur/manager/IndexManager.java @@ -118,6 +118,7 @@ import org.apache.lucene.search.DocIdSet; import org.apache.lucene.search.DocIdSetIterator; import org.apache.lucene.search.Filter; import org.apache.lucene.search.Query; +import org.apache.lucene.search.Sort; import org.apache.lucene.search.TermQuery; import org.apache.lucene.search.TopDocs; import org.apache.lucene.search.highlight.InvalidTokenOffsetsException; @@ -1297,8 +1298,9 @@ public class IndexManager { // BlurResultIterableSearcher will close searcher, if shard server // context is null. trace2 = Trace.trace("query initial search"); + Sort sort = null; return new BlurResultIterableSearcher(_running, rewrite, _table, shard, searcher, _selector, - _shardServerContext == null, _runSlow, _fetchCount, _maxHeapPerRowFetch, _context, _filter); + _shardServerContext == null, _runSlow, _fetchCount, _maxHeapPerRowFetch, _context, _filter, sort); } catch (BlurException e) { switch (_status.getQueryStatus().getState()) { case INTERRUPTED: http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/2f8179cb/blur-core/src/main/java/org/apache/blur/manager/results/BlurResultIterableSearcher.java ---------------------------------------------------------------------- diff --git a/blur-core/src/main/java/org/apache/blur/manager/results/BlurResultIterableSearcher.java b/blur-core/src/main/java/org/apache/blur/manager/results/BlurResultIterableSearcher.java index 6f669ab..047e79d 100644 --- a/blur-core/src/main/java/org/apache/blur/manager/results/BlurResultIterableSearcher.java +++ b/blur-core/src/main/java/org/apache/blur/manager/results/BlurResultIterableSearcher.java @@ -30,11 +30,14 @@ import org.apache.blur.thrift.generated.BlurException; import org.apache.blur.thrift.generated.BlurResult; import org.apache.blur.thrift.generated.Selector; import org.apache.blur.utils.BlurIterator; +import org.apache.blur.utils.BlurUtil; import org.apache.blur.utils.Converter; import org.apache.blur.utils.IteratorConverter; +import org.apache.lucene.search.FieldDoc; import org.apache.lucene.search.Filter; import org.apache.lucene.search.Query; import org.apache.lucene.search.ScoreDoc; +import org.apache.lucene.search.Sort; public class BlurResultIterableSearcher implements BlurResultIterable { @@ -49,13 +52,15 @@ public class BlurResultIterableSearcher implements BlurResultIterable { private final boolean _closeSearcher; private final boolean _runSlow; private final IterablePaging _iterablePaging; + private final Sort _sort; private IndexSearcherClosable _searcher; private long _skipTo; public BlurResultIterableSearcher(AtomicBoolean running, Query query, String table, String shard, IndexSearcherClosable searcher, Selector selector, boolean closeSearcher, boolean runSlow, int fetchCount, - int maxHeapPerRowFetch, TableContext context, Filter filter) throws BlurException { + int maxHeapPerRowFetch, TableContext context, Filter filter, Sort sort) throws BlurException { + _sort = sort; _running = running; _query = query; _shard = shard; @@ -64,13 +69,18 @@ public class BlurResultIterableSearcher implements BlurResultIterable { _runSlow = runSlow; _fetchCount = fetchCount; _iterablePaging = new IterablePaging(_running, _searcher, _query, _fetchCount, _totalHitsRef, _progressRef, - _runSlow); + _runSlow, _sort); _iteratorConverter = new IteratorConverter<ScoreDoc, BlurResult, BlurException>(_iterablePaging.iterator(), new Converter<ScoreDoc, BlurResult, BlurException>() { @Override public BlurResult convert(ScoreDoc scoreDoc) throws BlurException { String resolveId = resolveId(scoreDoc); - return new BlurResult(resolveId, scoreDoc.score, null); + if (_sort == null) { + return new BlurResult(resolveId, scoreDoc.score, null, null); + } else { + FieldDoc fieldDoc = (FieldDoc) scoreDoc; + return new BlurResult(resolveId, scoreDoc.score, null, BlurUtil.convertToSortFields(fieldDoc.fields)); + } } }); _shardInfo.put(_shard, (long) _totalHitsRef.totalHits()); http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/2f8179cb/blur-core/src/main/java/org/apache/blur/manager/results/BlurResultIterableSimple.java ---------------------------------------------------------------------- diff --git a/blur-core/src/main/java/org/apache/blur/manager/results/BlurResultIterableSimple.java b/blur-core/src/main/java/org/apache/blur/manager/results/BlurResultIterableSimple.java index e595107..96e2a90 100644 --- a/blur-core/src/main/java/org/apache/blur/manager/results/BlurResultIterableSimple.java +++ b/blur-core/src/main/java/org/apache/blur/manager/results/BlurResultIterableSimple.java @@ -34,7 +34,6 @@ public class BlurResultIterableSimple implements BlurResultIterable { private long skipTo; public BlurResultIterableSimple(String shard, List<BlurResult> hits) { - Collections.sort(hits, BlurUtil.HITS_COMPARATOR); this.results = hits; this.shardInfo = new TreeMap<String, Long>(); this.shardInfo.put(shard, (long) hits.size()); http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/2f8179cb/blur-core/src/main/java/org/apache/blur/manager/results/BlurResultPeekableIteratorComparator.java ---------------------------------------------------------------------- diff --git a/blur-core/src/main/java/org/apache/blur/manager/results/BlurResultPeekableIteratorComparator.java b/blur-core/src/main/java/org/apache/blur/manager/results/BlurResultPeekableIteratorComparator.java index 7253af2..474697f 100644 --- a/blur-core/src/main/java/org/apache/blur/manager/results/BlurResultPeekableIteratorComparator.java +++ b/blur-core/src/main/java/org/apache/blur/manager/results/BlurResultPeekableIteratorComparator.java @@ -17,9 +17,11 @@ package org.apache.blur.manager.results; * limitations under the License. */ import java.util.Comparator; +import java.util.List; import org.apache.blur.thrift.generated.BlurException; import org.apache.blur.thrift.generated.BlurResult; +import org.apache.blur.thrift.generated.SortField; public class BlurResultPeekableIteratorComparator implements Comparator<PeekableIterator<BlurResult, BlurException>> { @@ -27,6 +29,7 @@ public class BlurResultPeekableIteratorComparator implements Comparator<Peekable public int compare(PeekableIterator<BlurResult, BlurException> o1, PeekableIterator<BlurResult, BlurException> o2) { BlurResult result1 = o1.peek(); BlurResult result2 = o2.peek(); + if (result1 == null && result2 == null) { return 0; } else if (result1 == null) { @@ -34,6 +37,29 @@ public class BlurResultPeekableIteratorComparator implements Comparator<Peekable } else if (result2 == null) { return -1; } + + List<SortField> sortFields1 = result1.getSortFields(); + List<SortField> sortFields2 = result2.getSortFields(); + if (sortFields1 != null && sortFields2 != null) { + // Then we need to do a sort merge + int size1 = sortFields1.size(); + int size2 = sortFields2.size(); + if (size1 != size2) { + throw new RuntimeException("Result mismatch, sizes of sortfields must match [" + result1 + "] [" + + result2 + "]"); + } + for (int i = 0; i < size1; i++) { + SortField sortField1 = sortFields1.get(i); + SortField sortField2 = sortFields2.get(i); + int compare = sortField1.compareTo(sortField2); + if (compare != 0) { + return compare; + } + } + } else if (sortFields1 == null || sortFields2 == null) { + throw new RuntimeException("Result mismatch, one of the 2 results have null sortfields [" + result1 + "] [" + + result2 + "]"); + } int compare = Double.compare(result2.score, result1.score); if (compare == 0) { return result2.locationId.compareTo(result1.locationId); http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/2f8179cb/blur-core/src/main/java/org/apache/blur/utils/BlurUtil.java ---------------------------------------------------------------------- diff --git a/blur-core/src/main/java/org/apache/blur/utils/BlurUtil.java b/blur-core/src/main/java/org/apache/blur/utils/BlurUtil.java index aecf229..7f1baaf 100644 --- a/blur-core/src/main/java/org/apache/blur/utils/BlurUtil.java +++ b/blur-core/src/main/java/org/apache/blur/utils/BlurUtil.java @@ -96,6 +96,7 @@ import org.apache.blur.thrift.generated.Row; import org.apache.blur.thrift.generated.RowMutation; import org.apache.blur.thrift.generated.RowMutationType; import org.apache.blur.thrift.generated.Selector; +import org.apache.blur.thrift.generated.SortField; import org.apache.blur.thrift.util.ResetableTMemoryBuffer; import org.apache.blur.trace.Trace; import org.apache.blur.trace.Tracer; @@ -1221,4 +1222,9 @@ public class BlurUtil { return (Iface) Proxy.newProxyInstance(Iface.class.getClassLoader(), new Class[] { Iface.class }, handler); } + public static List<SortField> convertToSortFields(Object[] fields) { + // TODO Auto-generated method stub + return null; + } + } http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/2f8179cb/blur-core/src/test/java/org/apache/blur/manager/results/BlurResultPeekableIteratorComparatorTest.java ---------------------------------------------------------------------- diff --git a/blur-core/src/test/java/org/apache/blur/manager/results/BlurResultPeekableIteratorComparatorTest.java b/blur-core/src/test/java/org/apache/blur/manager/results/BlurResultPeekableIteratorComparatorTest.java index b7eeb67..85aab8e 100644 --- a/blur-core/src/test/java/org/apache/blur/manager/results/BlurResultPeekableIteratorComparatorTest.java +++ b/blur-core/src/test/java/org/apache/blur/manager/results/BlurResultPeekableIteratorComparatorTest.java @@ -29,12 +29,11 @@ import org.apache.blur.utils.BlurIterator; import org.apache.blur.utils.BlurUtil; import org.junit.Test; - public class BlurResultPeekableIteratorComparatorTest { @Test public void testResultPeekableIteratorComparator() throws BlurException { - List<PeekableIterator<BlurResult,BlurException>> results = new ArrayList<PeekableIterator<BlurResult,BlurException>>(); + List<PeekableIterator<BlurResult, BlurException>> results = new ArrayList<PeekableIterator<BlurResult, BlurException>>(); results.add(PeekableIterator.wrap(wrap(new ArrayList<BlurResult>(Arrays.asList(newResult("5", 5))).iterator()))); results.add(PeekableIterator.wrap(wrap(new ArrayList<BlurResult>().iterator()))); results.add(PeekableIterator.wrap(wrap(new ArrayList<BlurResult>().iterator()))); @@ -45,7 +44,7 @@ public class BlurResultPeekableIteratorComparatorTest { Collections.sort(results, BlurUtil.HITS_PEEKABLE_ITERATOR_COMPARATOR); - for (PeekableIterator<BlurResult,BlurException> iterator : results) { + for (PeekableIterator<BlurResult, BlurException> iterator : results) { System.out.println(iterator.peek()); } } @@ -55,7 +54,7 @@ public class BlurResultPeekableIteratorComparatorTest { } private BlurResult newResult(String id, double score) { - return new BlurResult(id, score, null); + return new BlurResult(id, score, null, null); } } http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/2f8179cb/blur-core/src/test/java/org/apache/blur/manager/results/MultipleBlurResultIterableTest.java ---------------------------------------------------------------------- diff --git a/blur-core/src/test/java/org/apache/blur/manager/results/MultipleBlurResultIterableTest.java b/blur-core/src/test/java/org/apache/blur/manager/results/MultipleBlurResultIterableTest.java index d4f5e6f..b1aacf4 100644 --- a/blur-core/src/test/java/org/apache/blur/manager/results/MultipleBlurResultIterableTest.java +++ b/blur-core/src/test/java/org/apache/blur/manager/results/MultipleBlurResultIterableTest.java @@ -17,42 +17,143 @@ package org.apache.blur.manager.results; * limitations under the License. */ +import java.io.IOException; import java.util.ArrayList; +import java.util.Collections; +import java.util.Comparator; import java.util.List; +import java.util.Map.Entry; +import java.util.Random; import java.util.UUID; -import org.apache.blur.manager.results.BlurResultIterable; -import org.apache.blur.manager.results.BlurResultIterableMultiple; -import org.apache.blur.manager.results.BlurResultIterableSimple; import org.apache.blur.thrift.generated.BlurException; import org.apache.blur.thrift.generated.BlurResult; +import org.apache.blur.thrift.generated.SortField; import org.apache.blur.utils.BlurIterator; +import org.apache.blur.utils.BlurUtil; import org.junit.Test; - public class MultipleBlurResultIterableTest { @Test - public void testMultipleHitsIterable() throws BlurException { + public void testMultipleHitsIterableNoSort() throws BlurException, IOException { + BlurResultIterableMultiple iterable = new BlurResultIterableMultiple(); + Random random = new Random(); + iterable.addBlurResultIterable(newBlurResultIterableNoSort(0, random, 0, 0.1, 3, 2, 9, 10, 2)); + iterable.addBlurResultIterable(newBlurResultIterableNoSort(1, random, 7, 2, 9, 1, 34, 53, 12)); + iterable.addBlurResultIterable(newBlurResultIterableNoSort(2, random, 4, 3)); + iterable.addBlurResultIterable(newBlurResultIterableNoSort(3, random, 7, 2, 34, 132)); + iterable.addBlurResultIterable(newBlurResultIterableNoSort(4, random)); + + BlurIterator<BlurResult, BlurException> iterator = iterable.iterator(); + while (iterator.hasNext()) { + BlurResult hit = iterator.next(); + System.out.println(hit); + } + iterable.close(); + } + + @SuppressWarnings("unchecked") + @Test + public void testMultipleHitsIterableSort() throws BlurException, IOException { BlurResultIterableMultiple iterable = new BlurResultIterableMultiple(); - iterable.addBlurResultIterable(newBlurResultIterable(0, 0.1, 3, 2, 9, 10, 2)); - iterable.addBlurResultIterable(newBlurResultIterable(7, 2, 9, 1, 34, 53, 12)); - iterable.addBlurResultIterable(newBlurResultIterable(4, 3)); - iterable.addBlurResultIterable(newBlurResultIterable(7, 2, 34, 132)); - iterable.addBlurResultIterable(newBlurResultIterable()); + Random random = new Random(); + iterable.addBlurResultIterable(newBlurResultIterableSort(0, random, e(0, "a"), e(0.1, "b"), e(3, "y"), e(2, "r"), + e(9, null), e(10, "m"), e(2, "r"))); + iterable.addBlurResultIterable(newBlurResultIterableSort(1, random, e(7, "bb"), e(2, "x"), e(9, "aaaa"), + e(1, "t-"), e(34, "erw"), e(53, "iow"), e(12, "rewt"))); BlurIterator<BlurResult, BlurException> iterator = iterable.iterator(); while (iterator.hasNext()) { BlurResult hit = iterator.next(); System.out.println(hit); } + iterable.close(); + } + + private Entry<Double, List<SortField>> e(final double score, String s) { + final List<SortField> sortFields = new ArrayList<SortField>(); + SortField sortField = new SortField(); + if (s == null) { + sortField.setNullValue(true); + } else { + sortField.setStringValue(s); + } + sortFields.add(sortField); + return new Entry<Double, List<SortField>>() { + + @Override + public List<SortField> getValue() { + return sortFields; + } + + @Override + public Double getKey() { + return score; + } + + @Override + public List<SortField> setValue(List<SortField> value) { + return null; + } + }; + } + + private BlurResultIterable newBlurResultIterableSort(int shard, Random random, + Entry<Double, List<SortField>>... entries) { + List<BlurResult> results = new ArrayList<BlurResult>(); + for (Entry<Double, List<SortField>> entry : entries) { + String shardName = BlurUtil.getShardName(shard); + int docId = random.nextInt(Integer.MAX_VALUE); + Double score = entry.getKey(); + results.add(new BlurResult(shardName + "/" + docId, score, null, entry.getValue())); + } + Collections.sort(results, new Comparator<BlurResult>() { + @Override + public int compare(BlurResult o1, BlurResult o2) { + List<SortField> sortFields1 = o1.getSortFields(); + List<SortField> sortFields2 = o2.getSortFields(); + if (sortFields1.size() != sortFields2.size()) { + throw new RuntimeException("SortFields must be the same size."); + } + for (int i = 0; i < sortFields1.size(); i++) { + SortField sortField1 = sortFields1.get(i); + SortField sortField2 = sortFields2.get(i); + int compare = sortField1.compareTo(sortField2); + if (compare != 0) { + return compare; + } + } + double score1 = o1.getScore(); + double score2 = o2.getScore(); + if (score1 == score2) { + return o1.getLocationId().compareTo(o2.getLocationId()); + } + return (int) (score1 - score2); + } + }); + return new BlurResultIterableSimple(UUID.randomUUID().toString(), results); } - private BlurResultIterable newBlurResultIterable(double... ds) { + private BlurResultIterable newBlurResultIterableNoSort(int shard, Random random, double... ds) { List<BlurResult> results = new ArrayList<BlurResult>(); for (double d : ds) { - results.add(new BlurResult(UUID.randomUUID().toString() + "-" + Double.toString(d), d, null)); + String shardName = BlurUtil.getShardName(shard); + int docId = random.nextInt(Integer.MAX_VALUE); + results.add(new BlurResult(shardName + "/" + docId, d, null, null)); } + Collections.sort(results, new Comparator<BlurResult>() { + @Override + public int compare(BlurResult o1, BlurResult o2) { + double score1 = o1.getScore(); + double score2 = o2.getScore(); + if (score1 == score2) { + return o1.getLocationId().compareTo(o2.getLocationId()); + } + return (int) (score1 - score2); + } + }); + Collections.sort(results, BlurUtil.HITS_COMPARATOR); return new BlurResultIterableSimple(UUID.randomUUID().toString(), results); } http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/2f8179cb/blur-query/src/main/java/org/apache/blur/lucene/search/IterablePaging.java ---------------------------------------------------------------------- diff --git a/blur-query/src/main/java/org/apache/blur/lucene/search/IterablePaging.java b/blur-query/src/main/java/org/apache/blur/lucene/search/IterablePaging.java index 15fd094..b9502ed 100644 --- a/blur-query/src/main/java/org/apache/blur/lucene/search/IterablePaging.java +++ b/blur-query/src/main/java/org/apache/blur/lucene/search/IterablePaging.java @@ -56,10 +56,10 @@ public class IterablePaging implements BlurIterable<ScoreDoc, BlurException> { private int skipTo; private int gather = -1; - public IterablePaging(AtomicBoolean running, IndexSearcher searcher, Query query, int numHitsToCollect, - TotalHitsRef totalHitsRef, ProgressRef progressRef, boolean runSlow) throws BlurException { - this(running, searcher, query, numHitsToCollect, totalHitsRef, progressRef, runSlow, null); - } +// public IterablePaging(AtomicBoolean running, IndexSearcher searcher, Query query, int numHitsToCollect, +// TotalHitsRef totalHitsRef, ProgressRef progressRef, boolean runSlow) throws BlurException { +// this(running, searcher, query, numHitsToCollect, totalHitsRef, progressRef, runSlow, null); +// } public IterablePaging(AtomicBoolean running, IndexSearcher searcher, Query query, int numHitsToCollect, TotalHitsRef totalHitsRef, ProgressRef progressRef, boolean runSlow, Sort sort) throws BlurException { http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/2f8179cb/blur-query/src/test/java/org/apache/blur/lucene/search/TestingPagingCollector.java ---------------------------------------------------------------------- diff --git a/blur-query/src/test/java/org/apache/blur/lucene/search/TestingPagingCollector.java b/blur-query/src/test/java/org/apache/blur/lucene/search/TestingPagingCollector.java index 078b1f9..737c617 100644 --- a/blur-query/src/test/java/org/apache/blur/lucene/search/TestingPagingCollector.java +++ b/blur-query/src/test/java/org/apache/blur/lucene/search/TestingPagingCollector.java @@ -45,11 +45,9 @@ import org.apache.lucene.search.IndexSearcher; import org.apache.lucene.search.ScoreDoc; import org.apache.lucene.search.Sort; import org.apache.lucene.search.SortField; -import org.apache.lucene.search.SortField.Type; import org.apache.lucene.search.TermQuery; import org.apache.lucene.store.Directory; import org.apache.lucene.store.RAMDirectory; -import org.apache.lucene.util.BytesRef; import org.junit.Test; /** @@ -67,7 +65,7 @@ public class TestingPagingCollector { ProgressRef progressRef = new ProgressRef(); TermQuery query = new TermQuery(new Term("f1", "value")); - IterablePaging paging = new IterablePaging(new AtomicBoolean(true), searcher, query, 100, null, null, false); + IterablePaging paging = new IterablePaging(new AtomicBoolean(true), searcher, query, 100, null, null, false, null); IterablePaging itPaging = paging.skipTo(90).gather(20).totalHits(totalHitsRef).progress(progressRef); BlurIterator<ScoreDoc, BlurException> iterator = itPaging.iterator(); int position = 90; @@ -96,7 +94,7 @@ public class TestingPagingCollector { printHeapSize(); TermQuery query = new TermQuery(new Term("f1", "value")); -// SortField sortfield = new SortField("index", Type.INT, true); + // SortField sortfield = new SortField("index", Type.INT, true); FieldComparatorSource comparator = getFieldComparatorSource(); SortField sortfield = new SortField("index", comparator); Sort sort = new Sort(sortfield);
