lucene-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From hoss...@apache.org
Subject svn commit: r980604 - in /lucene/dev/branches/branch_3x/solr: ./ example/ lib/ src/ src/common/org/apache/solr/common/ src/common/org/apache/solr/common/params/ src/java/org/apache/solr/analysis/ src/java/org/apache/solr/request/ src/java/org/apache/so...
Date Thu, 29 Jul 2010 23:15:04 GMT
Author: hossman
Date: Thu Jul 29 23:15:03 2010
New Revision: 980604

URL: http://svn.apache.org/viewvc?rev=980604&view=rev
Log:
SOLR-397: merging r940556 from trunk -- the code itself merged cleanly, but the test merged very painfully because of a lot of test code refactoring that's been done on the trunk.  the test changes also illumnated a hiden-bug in an unrelated prefix faceting test which assumed a fixed set of facet values would be returned for a field with facetmincount=0 -- even though the index wasn't being cleaned up prior to the test.  it was essentailly only working because of luck about when segment merges were happening

Modified:
    lucene/dev/branches/branch_3x/solr/   (props changed)
    lucene/dev/branches/branch_3x/solr/CHANGES.txt
    lucene/dev/branches/branch_3x/solr/example/   (props changed)
    lucene/dev/branches/branch_3x/solr/lib/commons-httpclient-3.1.jar   (props changed)
    lucene/dev/branches/branch_3x/solr/lib/jcl-over-slf4j-1.5.5.jar   (props changed)
    lucene/dev/branches/branch_3x/solr/src/   (props changed)
    lucene/dev/branches/branch_3x/solr/src/common/org/apache/solr/common/   (props changed)
    lucene/dev/branches/branch_3x/solr/src/common/org/apache/solr/common/params/FacetParams.java
    lucene/dev/branches/branch_3x/solr/src/java/org/apache/solr/analysis/SynonymFilter.java   (props changed)
    lucene/dev/branches/branch_3x/solr/src/java/org/apache/solr/analysis/SynonymMap.java   (props changed)
    lucene/dev/branches/branch_3x/solr/src/java/org/apache/solr/request/SimpleFacets.java
    lucene/dev/branches/branch_3x/solr/src/java/org/apache/solr/response/   (props changed)
    lucene/dev/branches/branch_3x/solr/src/maven/solr-core-pom.xml.template   (props changed)
    lucene/dev/branches/branch_3x/solr/src/maven/solr-solrj-pom.xml.template   (props changed)
    lucene/dev/branches/branch_3x/solr/src/solrj/org/   (props changed)
    lucene/dev/branches/branch_3x/solr/src/test/org/apache/solr/analysis/TestRemoveDuplicatesTokenFilter.java   (props changed)
    lucene/dev/branches/branch_3x/solr/src/test/org/apache/solr/analysis/TestTrimFilter.java   (props changed)
    lucene/dev/branches/branch_3x/solr/src/test/org/apache/solr/client/   (props changed)
    lucene/dev/branches/branch_3x/solr/src/test/org/apache/solr/request/SimpleFacetsTest.java
    lucene/dev/branches/branch_3x/solr/src/webapp/src/org/apache/solr/client/solrj/embedded/   (props changed)
    lucene/dev/branches/branch_3x/solr/src/webapp/web/admin/   (props changed)

Propchange: lucene/dev/branches/branch_3x/solr/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jul 29 23:15:03 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/solr:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,961941,962555,962714,963372,963654,963720,963781,
 963873,963888,963906,963909,963920,964019,964054,964267,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
+/lucene/dev/trunk/solr:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940556,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,961941,962555,962714,963372,963654,963720,
 963781,963873,963888,963906,963909,963920,964019,964054,964267,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
 /lucene/java/branches/lucene_2_4/solr:748824
 /lucene/java/branches/lucene_2_9/solr:817269-818600,825998,829134,829881,831036,896850,909334
 /lucene/java/branches/lucene_2_9_back_compat_tests/solr:818601-821336

Modified: lucene/dev/branches/branch_3x/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/solr/CHANGES.txt?rev=980604&r1=980603&r2=980604&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/solr/CHANGES.txt (original)
+++ lucene/dev/branches/branch_3x/solr/CHANGES.txt Thu Jul 29 23:15:03 2010
@@ -160,6 +160,14 @@ New Features
 * SOLR-1985: FastVectorHighlighter: add wrapper class for Lucene's SingleFragListBuilder (koji)
 
 * SOLR-1984: Add HyphenationCompoundWordTokenFilterFactory. (PB via rmuir)
+
+* SOLR-397: Date Faceting now supports a "facet.date.include" param
+  for specifying when the upper & lower end points of computed date
+  ranges should be included in the range.  Legal values are: "all",
+  "lower", "upper", "edge", and "outer".  For backwards compatibility
+  the default value is the set: [lower,upper,edge], so that al ranges
+  between start and ed are inclusive of their endpoints, but the
+  "before" and "after" ranges are not.
    
 * SOLR-2015: Add a boolean attribute autoGeneratePhraseQueries to TextField.
   autoGeneratePhraseQueries="true" (the default) causes the query parser to

Propchange: lucene/dev/branches/branch_3x/solr/example/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jul 29 23:15:03 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/solr/example:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,961821,961941,962555,962714,963372,963654,963720
 ,963781,963873,963888,963906,963909,963920,964019,964054,964267,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
+/lucene/dev/trunk/solr/example:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940556,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,961821,961941,962555,962714,963372,963654
 ,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
 /lucene/java/branches/lucene_2_4/solr/example:748824
 /lucene/java/branches/lucene_2_9/solr/example:817269-818600,825998,829134,829881,831036,896850,909334
 /lucene/java/branches/lucene_2_9_back_compat_tests/solr/example:818601-821336

Propchange: lucene/dev/branches/branch_3x/solr/lib/commons-httpclient-3.1.jar
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jul 29 23:15:03 2010
@@ -1,2 +1,2 @@
-/lucene/dev/trunk/solr/lib/commons-httpclient-3.1.jar:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,961941,962555,9627
 14,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
+/lucene/dev/trunk/solr/lib/commons-httpclient-3.1.jar:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940556,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,961941,9625
 55,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
 /lucene/solr/trunk/lib/commons-httpclient-3.1.jar:922950-923910,923912-925091

Propchange: lucene/dev/branches/branch_3x/solr/lib/jcl-over-slf4j-1.5.5.jar
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jul 29 23:15:03 2010
@@ -1,2 +1,2 @@
-/lucene/dev/trunk/solr/lib/jcl-over-slf4j-1.5.5.jar:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,961941,962555,962714
 ,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
+/lucene/dev/trunk/solr/lib/jcl-over-slf4j-1.5.5.jar:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940556,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,961941,962555
 ,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
 /lucene/solr/trunk/lib/jcl-over-slf4j-1.5.5.jar:922950-923910,923912-925091

Propchange: lucene/dev/branches/branch_3x/solr/src/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jul 29 23:15:03 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/solr/src:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,961821,961941,962555,962714,963372,963654,963720,963
 781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
+/lucene/dev/trunk/solr/src:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940556,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,961821,961941,962555,962714,963372,963654,963
 720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
 /lucene/java/branches/lucene_2_4/solr/src:748824
 /lucene/java/branches/lucene_2_9/solr/src:817269-818600,825998,829134,829881,831036,896850,909334
 /lucene/java/branches/lucene_2_9_back_compat_tests/solr/src:818601-821336

Propchange: lucene/dev/branches/branch_3x/solr/src/common/org/apache/solr/common/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jul 29 23:15:03 2010
@@ -1,2 +1,2 @@
-/lucene/dev/trunk/solr/src/common/org/apache/solr/common:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,961821,961941,9
 62555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
+/lucene/dev/trunk/solr/src/common/org/apache/solr/common:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940556,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,961821,9
 61941,962555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
 /lucene/solr/trunk/src/common/org/apache/solr/common:922950-923910,923912-925091

Modified: lucene/dev/branches/branch_3x/solr/src/common/org/apache/solr/common/params/FacetParams.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/solr/src/common/org/apache/solr/common/params/FacetParams.java?rev=980604&r1=980603&r2=980604&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/solr/src/common/org/apache/solr/common/params/FacetParams.java (original)
+++ lucene/dev/branches/branch_3x/solr/src/common/org/apache/solr/common/params/FacetParams.java Thu Jul 29 23:15:03 2010
@@ -19,9 +19,9 @@ package org.apache.solr.common.params;
 
 import org.apache.solr.common.SolrException;
 
+import java.util.EnumSet;
 import java.util.Locale;
 
-
 /**
  * Facet parameters
  */
@@ -163,6 +163,7 @@ public interface FacetParams {
    * <li>none = no additional info requested</li>
    * </ul>
    * @see #FACET_DATE_OTHER
+   * @see #FACET_DATE_INCLUDE
    */
   public enum FacetDateOther {
     BEFORE, AFTER, BETWEEN, ALL, NONE;
@@ -178,6 +179,73 @@ public interface FacetParams {
     }
   }
   
+  /**
+   * <p>
+   * Multivalued string indicating what rules should be applied to determine 
+   * when the the ranges generated for date faceting should be inclusive or 
+   * exclusive of their end points.
+   * </p>
+   * <p>
+   * The default value if none are specified is: [lower,upper,edge]
+   * </p>
+   * <p>
+   * Can be overriden on a per field basis.
+   * </p>
+   * @see FacetDateInclude
+   */
+  public static final String FACET_DATE_INCLUDE = FACET_DATE + ".include";
+
+  /**
+   * An enumeration of the legal values for FACET_DATE_INCLUDE...
+   * <ul>
+   * <li>lower = all gap based ranges include their lower bound</li>
+   * <li>upper = all gap based ranges include their upper bound</li>
+   * <li>edge = the first and last gap ranges include their edge bounds (ie: lower 
+   *     for the first one, upper for the last one) even if the corrisponding 
+   *     upper/lower option is not specified
+   * </li>
+   * <li>outer = the FacetDateOther.BEFORE and FacetDateOther.AFTER ranges 
+   *     should be inclusive of their bounds, even if the first or last ranges 
+   *     already include thouse boundaries.
+   * </li>
+   * <li>all = shorthand for lower, upper, edge, and outer</li>
+   * </ul>
+   * @see #FACET_DATE_INCLUDE
+   */
+  public enum FacetDateInclude {
+    ALL, LOWER, UPPER, EDGE, OUTER;
+    public String toString() { return super.toString().toLowerCase(); }
+    public static FacetDateInclude get(String label) {
+      try {
+        return valueOf(label.toUpperCase());
+      } catch (IllegalArgumentException e) {
+        throw new SolrException
+          (SolrException.ErrorCode.BAD_REQUEST,
+           label+" is not a valid type of for "+FACET_DATE_INCLUDE+" information",e);
+      }
+    }
+    /**
+     * Convinience method for parsing the param value according to the correct semantics.
+     */
+    public static EnumSet<FacetDateInclude> parseParam(final String[] param) {
+      // short circut for default behavior
+      if (null == param || 0 == param.length ) 
+        return EnumSet.of(LOWER, UPPER, EDGE);
+
+      // build up set containing whatever is specified
+      final EnumSet<FacetDateInclude> include = EnumSet.noneOf(FacetDateInclude.class);
+      for (final String o : param) {
+        include.add(FacetDateInclude.get(o));
+      }
+
+      // if set contains all, then we're back to short circuting
+      if (include.contains(FacetDateInclude.ALL)) 
+        return EnumSet.allOf(FacetDateInclude.class);
+
+      // use whatever we've got.
+      return include;
+    }
+  }
 
 }
 

Propchange: lucene/dev/branches/branch_3x/solr/src/java/org/apache/solr/analysis/SynonymFilter.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jul 29 23:15:03 2010
@@ -1,5 +1,5 @@
 /lucene/dev/trunk/modules/analysis/common/src/java/org/apache/lucene/analysis/synonym/SynonymFilter.java:950008
-/lucene/dev/trunk/solr/src/java/org/apache/solr/analysis/SynonymFilter.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960
 719,961821,961941,962555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
+/lucene/dev/trunk/solr/src/java/org/apache/solr/analysis/SynonymFilter.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940556,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960
 374,960719,961821,961941,962555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
 /lucene/java/branches/lucene_2_4/solr/src/java/org/apache/solr/analysis/SynonymFilter.java:748824
 /lucene/java/branches/lucene_2_9/solr/src/java/org/apache/solr/analysis/SynonymFilter.java:817269-818600,825998,829134,829881,831036,896850,909334
 /lucene/java/branches/lucene_2_9_back_compat_tests/solr/src/java/org/apache/solr/analysis/SynonymFilter.java:818601-821336

Propchange: lucene/dev/branches/branch_3x/solr/src/java/org/apache/solr/analysis/SynonymMap.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jul 29 23:15:03 2010
@@ -1,5 +1,5 @@
 /lucene/dev/trunk/modules/analysis/common/src/java/org/apache/lucene/analysis/synonym/SynonymMap.java:950008
-/lucene/dev/trunk/solr/src/java/org/apache/solr/analysis/SynonymMap.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719
 ,961821,961941,962555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
+/lucene/dev/trunk/solr/src/java/org/apache/solr/analysis/SynonymMap.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940556,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374
 ,960719,961821,961941,962555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
 /lucene/java/branches/lucene_2_4/solr/src/java/org/apache/solr/analysis/SynonymMap.java:748824
 /lucene/java/branches/lucene_2_9/solr/src/java/org/apache/solr/analysis/SynonymMap.java:817269-818600,825998,829134,829881,831036,896850,909334
 /lucene/java/branches/lucene_2_9_back_compat_tests/solr/src/java/org/apache/solr/analysis/SynonymMap.java:818601-821336

Modified: lucene/dev/branches/branch_3x/solr/src/java/org/apache/solr/request/SimpleFacets.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/solr/src/java/org/apache/solr/request/SimpleFacets.java?rev=980604&r1=980603&r2=980604&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/solr/src/java/org/apache/solr/request/SimpleFacets.java (original)
+++ lucene/dev/branches/branch_3x/solr/src/java/org/apache/solr/request/SimpleFacets.java Thu Jul 29 23:15:03 2010
@@ -29,6 +29,7 @@ import org.apache.solr.common.params.Req
 import org.apache.solr.common.params.SolrParams;
 import org.apache.solr.common.params.CommonParams;
 import org.apache.solr.common.params.FacetParams.FacetDateOther;
+import org.apache.solr.common.params.FacetParams.FacetDateInclude;
 import org.apache.solr.common.util.NamedList;
 import org.apache.solr.common.util.SimpleOrderedMap;
 import org.apache.solr.common.util.StrUtils;
@@ -602,8 +603,10 @@ public class SimpleFacets {
 
       int minCount = params.getFieldInt(f,FacetParams.FACET_MINCOUNT, 0);
 
+      final EnumSet<FacetDateInclude> include = FacetDateInclude.parseParam
+        (params.getFieldParams(f,FacetParams.FACET_DATE_INCLUDE));
+
       try {
-        
         Date low = start;
         while (low.before(end)) {
           dmp.setNow(low);
@@ -622,7 +625,14 @@ public class SimpleFacets {
               (SolrException.ErrorCode.BAD_REQUEST,
                "date facet infinite loop (is gap negative?)");
           }
-          int count = rangeCount(sf,low,high,true,true);
+          boolean includeLower = 
+            (include.contains(FacetDateInclude.LOWER) ||
+             (include.contains(FacetDateInclude.EDGE) && low.equals(start)));
+          boolean includeUpper = 
+            (include.contains(FacetDateInclude.UPPER) ||
+             (include.contains(FacetDateInclude.EDGE) && high.equals(end)));
+
+          int count = rangeCount(sf,low,high,includeLower,includeUpper);
           if (count >= minCount) {
             resInner.add(label, count);
           }
@@ -653,16 +663,30 @@ public class SimpleFacets {
           boolean all = others.contains(FacetDateOther.ALL);
         
           if (all || others.contains(FacetDateOther.BEFORE)) {
+            // include upper bound if "outer" or if first gap doesn't already include it
             resInner.add(FacetDateOther.BEFORE.toString(),
-                         rangeCount(sf,null,start,false,false));
+                         rangeCount(sf,null,start,
+                                    false,
+                                    (include.contains(FacetDateInclude.OUTER) ||
+                                     (! (include.contains(FacetDateInclude.LOWER) ||
+                                         include.contains(FacetDateInclude.EDGE))))));
           }
           if (all || others.contains(FacetDateOther.AFTER)) {
+            // include lower bound if "outer" or if last gap doesn't already include it
             resInner.add(FacetDateOther.AFTER.toString(),
-                         rangeCount(sf,end,null,false,false));
+                         rangeCount(sf,end,null,
+                                    (include.contains(FacetDateInclude.OUTER) ||
+                                     (! (include.contains(FacetDateInclude.UPPER) ||
+                                         include.contains(FacetDateInclude.EDGE)))),
+                                    false));
           }
           if (all || others.contains(FacetDateOther.BETWEEN)) {
             resInner.add(FacetDateOther.BETWEEN.toString(),
-                         rangeCount(sf,start,end,true,true));
+                         rangeCount(sf,start,end,
+                                    (include.contains(FacetDateInclude.LOWER) ||
+                                     include.contains(FacetDateInclude.EDGE)),
+                                    (include.contains(FacetDateInclude.UPPER) ||
+                                     include.contains(FacetDateInclude.EDGE))));
           }
         }
       }

Propchange: lucene/dev/branches/branch_3x/solr/src/java/org/apache/solr/response/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jul 29 23:15:03 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/solr/src/java/org/apache/solr/response:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950830,950835,951126,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,961821,961941,9
 62555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
+/lucene/dev/trunk/solr/src/java/org/apache/solr/response:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940556,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950830,950835,951126,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,961821,9
 61941,962555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
 /lucene/java/branches/lucene_2_4/solr/src/java/org/apache/solr/response:748824
 /lucene/java/branches/lucene_2_9/solr/src/java/org/apache/solr/response:817269-818600,825998,829134,829881,831036,896850,909334
 /lucene/java/branches/lucene_2_9_back_compat_tests/solr/src/java/org/apache/solr/response:818601-821336

Propchange: lucene/dev/branches/branch_3x/solr/src/maven/solr-core-pom.xml.template
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jul 29 23:15:03 2010
@@ -1,2 +1,2 @@
-/lucene/dev/trunk/solr/src/maven/solr-core-pom.xml.template:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,961821,96194
 1,962555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
+/lucene/dev/trunk/solr/src/maven/solr-core-pom.xml.template:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940556,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,96182
 1,961941,962555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
 /lucene/solr/trunk/src/maven/solr-core-pom.xml.template:922950-923910,923912-925091

Propchange: lucene/dev/branches/branch_3x/solr/src/maven/solr-solrj-pom.xml.template
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jul 29 23:15:03 2010
@@ -1,2 +1,2 @@
-/lucene/dev/trunk/solr/src/maven/solr-solrj-pom.xml.template:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,961821,9619
 41,962555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
+/lucene/dev/trunk/solr/src/maven/solr-solrj-pom.xml.template:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940556,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,9618
 21,961941,962555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
 /lucene/solr/trunk/src/maven/solr-solrj-pom.xml.template:922950-923910,923912-925091

Propchange: lucene/dev/branches/branch_3x/solr/src/solrj/org/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jul 29 23:15:03 2010
@@ -1,2 +1,2 @@
-/lucene/dev/trunk/solr/src/solrj/org:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,961821,961941,962555,962714,963372,
 963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
+/lucene/dev/trunk/solr/src/solrj/org:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940556,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,961821,961941,962555,962714,
 963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
 /lucene/solr/trunk/src/solrj/org:922950-923910,923912-925091

Propchange: lucene/dev/branches/branch_3x/solr/src/test/org/apache/solr/analysis/TestRemoveDuplicatesTokenFilter.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jul 29 23:15:03 2010
@@ -1,5 +1,5 @@
 /lucene/dev/trunk/modules/analysis/common/src/test/org/apache/lucene/analysis/miscellaneous/TestRemoveDuplicatesTokenFilter.java:950008
-/lucene/dev/trunk/solr/src/test/org/apache/solr/analysis/TestRemoveDuplicatesTokenFilter.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707
 ,960367,960374,960719,961821,961941,962555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
+/lucene/dev/trunk/solr/src/test/org/apache/solr/analysis/TestRemoveDuplicatesTokenFilter.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940556,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634
 ,957707,960367,960374,960719,961821,961941,962555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
 /lucene/java/branches/lucene_2_4/solr/src/test/org/apache/solr/analysis/TestRemoveDuplicatesTokenFilter.java:748824
 /lucene/java/branches/lucene_2_9/solr/src/test/org/apache/solr/analysis/TestRemoveDuplicatesTokenFilter.java:817269-818600,825998,829134,829881,831036,896850,909334
 /lucene/java/branches/lucene_2_9_back_compat_tests/solr/src/test/org/apache/solr/analysis/TestRemoveDuplicatesTokenFilter.java:818601-821336

Propchange: lucene/dev/branches/branch_3x/solr/src/test/org/apache/solr/analysis/TestTrimFilter.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jul 29 23:15:03 2010
@@ -1,5 +1,5 @@
 /lucene/dev/trunk/modules/analysis/common/src/test/org/apache/lucene/analysis/miscellaneous/TestTrimFilter.java:950008
-/lucene/dev/trunk/solr/src/test/org/apache/solr/analysis/TestTrimFilter.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,96
 0719,961821,961941,962555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
+/lucene/dev/trunk/solr/src/test/org/apache/solr/analysis/TestTrimFilter.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940556,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,96
 0374,960719,961821,961941,962555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
 /lucene/java/branches/lucene_2_4/solr/src/test/org/apache/solr/analysis/TestTrimFilter.java:748824
 /lucene/java/branches/lucene_2_9/solr/src/test/org/apache/solr/analysis/TestTrimFilter.java:817269-818600,825998,829134,829881,831036,896850,909334
 /lucene/java/branches/lucene_2_9_back_compat_tests/solr/src/test/org/apache/solr/analysis/TestTrimFilter.java:818601-821336

Propchange: lucene/dev/branches/branch_3x/solr/src/test/org/apache/solr/client/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jul 29 23:15:03 2010
@@ -1,2 +1,2 @@
-/lucene/dev/trunk/solr/src/test/org/apache/solr/client:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,961821,961941,962
 555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
+/lucene/dev/trunk/solr/src/test/org/apache/solr/client:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940556,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960719,961821,961
 941,962555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
 /lucene/solr/trunk/src/test/org/apache/solr/client:922950-923910,923912-925091

Modified: lucene/dev/branches/branch_3x/solr/src/test/org/apache/solr/request/SimpleFacetsTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/solr/src/test/org/apache/solr/request/SimpleFacetsTest.java?rev=980604&r1=980603&r2=980604&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/solr/src/test/org/apache/solr/request/SimpleFacetsTest.java (original)
+++ lucene/dev/branches/branch_3x/solr/src/test/org/apache/solr/request/SimpleFacetsTest.java Thu Jul 29 23:15:03 2010
@@ -20,6 +20,7 @@ package org.apache.solr.request;
 import org.apache.solr.SolrTestCaseJ4;
 import org.apache.solr.util.AbstractSolrTestCase;
 import org.junit.BeforeClass;
+import org.junit.After;
 import org.junit.Test;
 
 
@@ -217,28 +218,38 @@ public class SimpleFacetsTest extends So
 
   }
 
+  public static void indexDateFacets() {
+    final String i = "id";
+    final String f = "bday";
+    final String ff = "a_tdt";
+    final String ooo = "00:00:00.000Z";
+    final String xxx = "15:15:15.155Z";
+
+    assertU(adoc(i, "201",  f, "1976-07-04T12:08:56.235Z", ff, "1900-01-01T"+ooo));
+    assertU(adoc(i, "202",  f, "1976-07-05T00:00:00.000Z", ff, "1976-07-01T"+ooo));
+    assertU(adoc(i, "203",  f, "1976-07-15T00:07:67.890Z", ff, "1976-07-04T"+ooo));
+    assertU(commit());
+    assertU(adoc(i, "204",  f, "1976-07-21T00:07:67.890Z", ff, "1976-07-05T"+ooo));
+    assertU(adoc(i, "205",  f, "1976-07-13T12:12:25.255Z", ff, "1976-07-05T"+xxx));
+    assertU(adoc(i, "206",  f, "1976-07-03T17:01:23.456Z", ff, "1976-07-07T"+ooo));
+    assertU(adoc(i, "207",  f, "1976-07-12T12:12:25.255Z", ff, "1976-07-13T"+ooo));
+    assertU(commit());
+    assertU(adoc(i, "208",  f, "1976-07-15T15:15:15.155Z", ff, "1976-07-13T"+xxx));
+    assertU(adoc(i, "209",  f, "1907-07-12T13:13:23.235Z", ff, "1976-07-15T"+xxx));
+    assertU(adoc(i, "2010", f, "1976-07-03T11:02:45.678Z", ff, "2000-01-01T"+ooo));
+    assertU(adoc(i, "2011", f, "1907-07-12T12:12:25.255Z"));
+    assertU(adoc(i, "2012", f, "2007-07-30T07:07:07.070Z"));
+    assertU(adoc(i, "2013", f, "1976-07-30T22:22:22.222Z"));
+    assertU(adoc(i, "2014", f, "1976-07-05T22:22:22.222Z"));
+    assertU(commit());
+  }
+
   @Test
   public void testDateFacets() {
     final String f = "bday";
     final String pre = "//lst[@name='facet_dates']/lst[@name='"+f+"']";
 
-    assertU(adoc("id", "1",  f, "1976-07-04T12:08:56.235Z"));
-    assertU(adoc("id", "2",  f, "1976-07-05T00:00:00.000Z"));
-    assertU(adoc("id", "3",  f, "1976-07-15T00:07:67.890Z"));
-    assertU(commit());
-    assertU(adoc("id", "4",  f, "1976-07-21T00:07:67.890Z"));
-    assertU(adoc("id", "5",  f, "1976-07-13T12:12:25.255Z"));
-    assertU(adoc("id", "6",  f, "1976-07-03T17:01:23.456Z"));
-    assertU(adoc("id", "7",  f, "1976-07-12T12:12:25.255Z"));
-    assertU(adoc("id", "8",  f, "1976-07-15T15:15:15.155Z"));
-    assertU(adoc("id", "9",  f, "1907-07-12T13:13:23.235Z"));
-    assertU(adoc("id", "10", f, "1976-07-03T11:02:45.678Z"));
-    assertU(commit());
-    assertU(adoc("id", "11", f, "1907-07-12T12:12:25.255Z"));
-    assertU(adoc("id", "12", f, "2007-07-30T07:07:07.070Z"));
-    assertU(adoc("id", "13", f, "1976-07-30T22:22:22.222Z"));
-    assertU(adoc("id", "14", f, "1976-07-05T22:22:22.222Z"));
-    assertU(commit());
+    indexDateFacets();
 
     assertQ("check counts for month of facet by day",
             req( "q", "*:*"
@@ -343,6 +354,42 @@ public class SimpleFacetsTest extends So
             ,pre+"/int[@name='between'][.='11']"
             );
 
+    assertQ("check before is not inclusive of upper bound by default",
+            req("q", "*:*"
+                ,"rows", "0"
+                ,"facet", "true"
+                ,"facet.date", f
+                ,"facet.date.start",  "1976-07-05T00:00:00.000Z"
+                ,"facet.date.end",    "1976-07-07T00:00:00.000Z"
+                ,"facet.date.gap",    "+1DAY"
+                ,"facet.date.other",  "all"
+                )
+            // 2 gaps + pre+post+inner = 5
+            ,"*[count("+pre+"/int)=5]"
+            ,pre+"/int[@name='1976-07-05T00:00:00Z'][.='2'  ]"
+            ,pre+"/int[@name='1976-07-06T00:00:00Z'][.='0'  ]"
+            
+            ,pre+"/int[@name='before' ][.='5']"
+            );
+    assertQ("check after is not inclusive of lower bound by default",
+            req("q", "*:*"
+                ,"rows", "0"
+                ,"facet", "true"
+                ,"facet.date", f
+                ,"facet.date.start",  "1976-07-03T00:00:00.000Z"
+                ,"facet.date.end",    "1976-07-05T00:00:00.000Z"
+                ,"facet.date.gap",    "+1DAY"
+                ,"facet.date.other",  "all"
+                )
+            // 2 gaps + pre+post+inner = 5
+            ,"*[count("+pre+"/int)=5]"
+            ,pre+"/int[@name='1976-07-03T00:00:00Z'][.='2'  ]"
+            ,pre+"/int[@name='1976-07-04T00:00:00Z'][.='2'  ]"
+            
+            ,pre+"/int[@name='after' ][.='8']"
+            );
+            
+
     assertQ("check hardend=false",
             req( "q", "*:*"
                 ,"rows", "0"
@@ -389,6 +436,305 @@ public class SimpleFacetsTest extends So
     
   }
 
+  /** similar to testDateFacets, but a differnet field with test data 
+      exactly on on boundary marks */
+  @Test
+  public void testDateFacetsWithIncludeOption() {
+    final String f = "a_tdt";
+    final String pre = "//lst[@name='facet_dates']/lst[@name='"+f+"']";
+
+    indexDateFacets();
+
+    assertQ("checking counts for lower",
+            req( "q", "*:*"
+                ,"rows", "0"
+                ,"facet", "true"
+                ,"facet.date", f
+                ,"facet.date.start", "1976-07-01T00:00:00.000Z"
+                ,"facet.date.end",   "1976-07-16T00:00:00.000Z"
+                ,"facet.date.gap",   "+1DAY"
+                ,"facet.date.other", "all"
+                ,"facet.date.include", "lower"
+                )
+            // 15 days + pre+post+inner = 18
+            ,"*[count("+pre+"/int)=18]"
+            ,pre+"/int[@name='1976-07-01T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-02T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-03T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-04T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-05T00:00:00Z'][.='2'  ]"
+            ,pre+"/int[@name='1976-07-06T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-07T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-08T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-09T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-10T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-11T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-12T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-13T00:00:00Z'][.='2'  ]"
+            ,pre+"/int[@name='1976-07-14T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-15T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='before' ][.='1']"
+            ,pre+"/int[@name='after'  ][.='1']"
+            ,pre+"/int[@name='between'][.='8']"
+            );
+
+    assertQ("checking counts for upper",
+            req( "q", "*:*"
+                ,"rows", "0"
+                ,"facet", "true"
+                ,"facet.date", f
+                ,"facet.date.start", "1976-07-01T00:00:00.000Z"
+                ,"facet.date.end",   "1976-07-16T00:00:00.000Z"
+                ,"facet.date.gap",   "+1DAY"
+                ,"facet.date.other", "all"
+                ,"facet.date.include", "upper"
+                )
+            // 15 days + pre+post+inner = 18
+            ,"*[count("+pre+"/int)=18]"
+            ,pre+"/int[@name='1976-07-01T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-02T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-03T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-04T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-05T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-06T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-07T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-08T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-09T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-10T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-11T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-12T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-13T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-14T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-15T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='before' ][.='2']"
+            ,pre+"/int[@name='after'  ][.='1']"
+            ,pre+"/int[@name='between'][.='7']"
+            );
+
+    assertQ("checking counts for lower & upper",
+            req( "q", "*:*"
+                ,"rows", "0"
+                ,"facet", "true"
+                ,"facet.date", f
+                ,"facet.date.start", "1976-07-01T00:00:00.000Z"
+                ,"facet.date.end",   "1976-07-16T00:00:00.000Z"
+                ,"facet.date.gap",   "+1DAY"
+                ,"facet.date.other", "all"
+                ,"facet.date.include", "lower"
+                ,"facet.date.include", "upper"
+                )
+            // 15 days + pre+post+inner = 18
+            ,"*[count("+pre+"/int)=18]"
+            ,pre+"/int[@name='1976-07-01T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-02T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-03T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-04T00:00:00Z'][.='2'  ]"
+            ,pre+"/int[@name='1976-07-05T00:00:00Z'][.='2'  ]"
+            ,pre+"/int[@name='1976-07-06T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-07T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-08T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-09T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-10T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-11T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-12T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-13T00:00:00Z'][.='2'  ]"
+            ,pre+"/int[@name='1976-07-14T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-15T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='before' ][.='1']"
+            ,pre+"/int[@name='after'  ][.='1']"
+            ,pre+"/int[@name='between'][.='8']"
+            );
+
+    assertQ("checking counts for upper & edge",
+            req( "q", "*:*"
+                ,"rows", "0"
+                ,"facet", "true"
+                ,"facet.date", f
+                ,"facet.date.start", "1976-07-01T00:00:00.000Z"
+                ,"facet.date.end",   "1976-07-16T00:00:00.000Z"
+                ,"facet.date.gap",   "+1DAY"
+                ,"facet.date.other", "all"
+                ,"facet.date.include", "upper"
+                ,"facet.date.include", "edge"
+                )
+            // 15 days + pre+post+inner = 18
+            ,"*[count("+pre+"/int)=18]"
+            ,pre+"/int[@name='1976-07-01T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-02T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-03T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-04T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-05T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-06T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-07T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-08T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-09T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-10T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-11T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-12T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-13T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-14T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-15T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='before' ][.='1']"
+            ,pre+"/int[@name='after'  ][.='1']"
+            ,pre+"/int[@name='between'][.='8']"
+            );
+
+    assertQ("checking counts for upper & outer",
+            req( "q", "*:*"
+                ,"rows", "0"
+                ,"facet", "true"
+                ,"facet.date", f
+                ,"facet.date.start", "1976-07-01T00:00:00.000Z"
+                ,"facet.date.end",   "1976-07-13T00:00:00.000Z" // smaller now
+                ,"facet.date.gap",   "+1DAY"
+                ,"facet.date.other", "all"
+                ,"facet.date.include", "upper"
+                ,"facet.date.include", "outer"
+                )
+            // 12 days + pre+post+inner = 15
+            ,"*[count("+pre+"/int)=15]"
+            ,pre+"/int[@name='1976-07-01T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-02T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-03T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-04T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-05T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-06T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-07T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-08T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-09T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-10T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-11T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-12T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='before' ][.='2']"
+            ,pre+"/int[@name='after'  ][.='4']"
+            ,pre+"/int[@name='between'][.='5']"
+            );
+
+    assertQ("checking counts for lower & edge",
+            req( "q", "*:*"
+                ,"rows", "0"
+                ,"facet", "true"
+                ,"facet.date", f
+                ,"facet.date.start", "1976-07-01T00:00:00.000Z"
+                ,"facet.date.end",   "1976-07-13T00:00:00.000Z" // smaller now
+                ,"facet.date.gap",   "+1DAY"
+                ,"facet.date.other", "all"
+                ,"facet.date.include", "lower"
+                ,"facet.date.include", "edge"
+                )
+            // 12 days + pre+post+inner = 15
+            ,"*[count("+pre+"/int)=15]"
+            ,pre+"/int[@name='1976-07-01T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-02T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-03T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-04T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-05T00:00:00Z'][.='2'  ]"
+            ,pre+"/int[@name='1976-07-06T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-07T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-08T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-09T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-10T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-11T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-12T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='before' ][.='1']"
+            ,pre+"/int[@name='after'  ][.='3']"
+            ,pre+"/int[@name='between'][.='6']"
+            );
+
+    assertQ("checking counts for lower & outer",
+            req( "q", "*:*"
+                ,"rows", "0"
+                ,"facet", "true"
+                ,"facet.date", f
+                ,"facet.date.start", "1976-07-01T00:00:00.000Z"
+                ,"facet.date.end",   "1976-07-13T00:00:00.000Z" // smaller now
+                ,"facet.date.gap",   "+1DAY"
+                ,"facet.date.other", "all"
+                ,"facet.date.include", "lower"
+                ,"facet.date.include", "outer"
+                )
+            // 12 days + pre+post+inner = 15
+            ,"*[count("+pre+"/int)=15]"
+            ,pre+"/int[@name='1976-07-01T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-02T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-03T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-04T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-05T00:00:00Z'][.='2'  ]"
+            ,pre+"/int[@name='1976-07-06T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-07T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-08T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-09T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-10T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-11T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-12T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='before' ][.='2']"
+            ,pre+"/int[@name='after'  ][.='4']"
+            ,pre+"/int[@name='between'][.='5']"
+            );
+
+    assertQ("checking counts for lower & edge & outer",
+            req( "q", "*:*"
+                ,"rows", "0"
+                ,"facet", "true"
+                ,"facet.date", f
+                ,"facet.date.start", "1976-07-01T00:00:00.000Z"
+                ,"facet.date.end",   "1976-07-13T00:00:00.000Z" // smaller now
+                ,"facet.date.gap",   "+1DAY"
+                ,"facet.date.other", "all"
+                ,"facet.date.include", "lower"
+                ,"facet.date.include", "edge"
+                ,"facet.date.include", "outer"
+                )
+            // 12 days + pre+post+inner = 15
+            ,"*[count("+pre+"/int)=15]"
+            ,pre+"/int[@name='1976-07-01T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-02T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-03T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-04T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-05T00:00:00Z'][.='2'  ]"
+            ,pre+"/int[@name='1976-07-06T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-07T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-08T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-09T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-10T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-11T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-12T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='before' ][.='2']"
+            ,pre+"/int[@name='after'  ][.='4']"
+            ,pre+"/int[@name='between'][.='6']"
+            );
+
+    assertQ("checking counts for all",
+            req( "q", "*:*"
+                ,"rows", "0"
+                ,"facet", "true"
+                ,"facet.date", f
+                ,"facet.date.start", "1976-07-01T00:00:00.000Z"
+                ,"facet.date.end",   "1976-07-13T00:00:00.000Z" // smaller now
+                ,"facet.date.gap",   "+1DAY"
+                ,"facet.date.other", "all"
+                ,"facet.date.include", "all"
+                )
+            // 12 days + pre+post+inner = 15
+            ,"*[count("+pre+"/int)=15]"
+            ,pre+"/int[@name='1976-07-01T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-02T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-03T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-04T00:00:00Z'][.='2'  ]"
+            ,pre+"/int[@name='1976-07-05T00:00:00Z'][.='2'  ]"
+            ,pre+"/int[@name='1976-07-06T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-07T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='1976-07-08T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-09T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-10T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-11T00:00:00Z'][.='0']"
+            ,pre+"/int[@name='1976-07-12T00:00:00Z'][.='1'  ]"
+            ,pre+"/int[@name='before' ][.='2']"
+            ,pre+"/int[@name='after'  ][.='4']"
+            ,pre+"/int[@name='between'][.='6']"
+            );
+  }
+
   @Test
   public void testFacetMultiValued() {
     doFacetPrefix("t_s", "facet.method","enum");
@@ -584,6 +930,8 @@ public class SimpleFacetsTest extends So
     String pre = "//lst[@name='"+f+"']";
     String notc = "id:[* TO *] -"+f+":C";
 
+    assertU(delQ("*:*"));
+
     assertU(adoc("id", "1",  f, "AAA"));
     assertU(adoc("id", "2",  f, "B"));
     assertU(adoc("id", "3",  f, "BB"));

Propchange: lucene/dev/branches/branch_3x/solr/src/webapp/src/org/apache/solr/client/solrj/embedded/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jul 29 23:15:03 2010
@@ -1,2 +1,2 @@
-/lucene/dev/trunk/solr/src/webapp/src/org/apache/solr/client/solrj/embedded:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,960
 719,961821,961941,962555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
+/lucene/dev/trunk/solr/src/webapp/src/org/apache/solr/client/solrj/embedded:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940556,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960
 374,960719,961821,961941,962555,962714,963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964312,964430,964459,964720,964753,964832,964856,965103,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
 /lucene/solr/trunk/src/webapp/src/org/apache/solr/client/solrj/embedded:922950-923910,923912-925091

Propchange: lucene/dev/branches/branch_3x/solr/src/webapp/web/admin/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jul 29 23:15:03 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/solr/src/webapp/web/admin:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,961821,961941,962555,962714,963372,
 963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964306,964312,964430,964459,964720,964753,964832,964856,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
+/lucene/dev/trunk/solr/src/webapp/web/admin:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932417,932541,932576,932587,932698,932731-932749,932752,932773,932795,932828,932856-932857,932862,932864,932878,932963,932998-932999,933541-933575,933598,933613,933679,933879,934339,934954,935014-935048,935065,935186-935513,935521-935522,935553-935962,936522,936544,936605,936657-936726,937039,937360,938582-938646,938989,939111,939611,939649,940433,940447,940451-940452,940556,940666,940699,940730,940878-940892,940994,941270,941363,942166,942235,942288,942676,942719,943142,943493,943931,945057,945090,945130,945245,945343,945420,946139,946330,946338,946599,948011,948082,948429,949288,949311,949445,949976,949997,950008,950042,950125,950207,950458,950613,950723,950835,951126,951355,951397,951521,953628,953886,954336,955547,955613,955615,955796-955797,955809-955996,956097,956125,956173,956316,956715,957465,957520,957634,957707,960367,960374,961821,961941,962555,962714,
 963372,963654,963720,963781,963873,963888,963906,963909,963920,964019,964054,964267,964306,964312,964430,964459,964720,964753,964832,964856,965222,965230,965327,965330,965585,965938,966354,979049,979807,980369,980428,980436,980501
 /lucene/java/branches/lucene_2_4/solr/src/webapp/web/admin:748824
 /lucene/java/branches/lucene_2_9/solr/src/webapp/web/admin:817269-818600,825998,829134,829881,831036,896850,909334
 /lucene/java/branches/lucene_2_9_back_compat_tests/solr/src/webapp/web/admin:818601-821336



Mime
View raw message