From ef545d107ff28ebfe511cc8b2294f1d82f48aa18 Mon Sep 17 00:00:00 2001 From: Ryan McKinley Date: Fri, 18 Jan 2008 05:30:21 +0000 Subject: [PATCH] SOLR-418: Adding a query elevation component. This is an optional component to elevate some documents to the top positions (or exclude them) for a given query. git-svn-id: https://svn.apache.org/repos/asf/lucene/solr/trunk@613059 13f79535-47bb-0310-9956-ffa450edef68 --- CHANGES.txt | 4 + example/solr/conf/elevate.xml | 36 ++ example/solr/conf/solrconfig.xml | 16 + .../component/QueryElevationComponent.java | 494 ++++++++++++++++++ .../solr/search/function/FileFloatSource.java | 76 +-- .../org/apache/solr/util/VersionedFile.java | 109 ++++ .../QueryElevationComponentTest.java | 236 +++++++++ src/test/test-files/solr/conf/bad-schema.xml | 4 + src/test/test-files/solr/conf/elevate.xml | 36 ++ .../conf/schema-not-required-unique-key.xml | 1 + src/test/test-files/solr/conf/solrconfig.xml | 16 + 11 files changed, 954 insertions(+), 74 deletions(-) create mode 100644 example/solr/conf/elevate.xml create mode 100644 src/java/org/apache/solr/handler/component/QueryElevationComponent.java create mode 100644 src/java/org/apache/solr/util/VersionedFile.java create mode 100644 src/test/org/apache/solr/handler/component/QueryElevationComponentTest.java create mode 100644 src/test/test-files/solr/conf/elevate.xml diff --git a/CHANGES.txt b/CHANGES.txt index f40de5cd424..f75c6be3cdd 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -185,6 +185,10 @@ New Features 36. SOLR-446: TextResponseWriter can write SolrDocuments and SolrDocumentLists the same way it writes Document and DocList. (yonik, ryan) + +37. SOLR-418: Adding a query elevation component. This is an optional component to + elevate some documents to the top positions (or exclude them) for a given query. + (ryan) Changes in runtime behavior diff --git a/example/solr/conf/elevate.xml b/example/solr/conf/elevate.xml new file mode 100644 index 00000000000..7630ebe20fb --- /dev/null +++ b/example/solr/conf/elevate.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + diff --git a/example/solr/conf/solrconfig.xml b/example/solr/conf/solrconfig.xml index b0e7865764c..95802d03972 100755 --- a/example/solr/conf/solrconfig.xml +++ b/example/solr/conf/solrconfig.xml @@ -471,6 +471,22 @@ --> + + + string + elevate.xml + + + + + explicit + + + elevator + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/test/test-files/solr/conf/schema-not-required-unique-key.xml b/src/test/test-files/solr/conf/schema-not-required-unique-key.xml index 7853fbfad8d..bb67e7353e5 100644 --- a/src/test/test-files/solr/conf/schema-not-required-unique-key.xml +++ b/src/test/test-files/solr/conf/schema-not-required-unique-key.xml @@ -25,6 +25,7 @@ --> + diff --git a/src/test/test-files/solr/conf/solrconfig.xml b/src/test/test-files/solr/conf/solrconfig.xml index 538d732d4e1..43fed2f8e80 100644 --- a/src/test/test-files/solr/conf/solrconfig.xml +++ b/src/test/test-files/solr/conf/solrconfig.xml @@ -266,6 +266,22 @@ + + + string + elevate.xml + + + + + explicit + + + elevate + + + +