From bb1668c2b709f56e3c5436f3eb149009f3782627 Mon Sep 17 00:00:00 2001 From: kimchy Date: Wed, 2 Mar 2011 03:13:25 +0200 Subject: [PATCH] count date histo using the wrong counts aggregator to return results when using time based setting interval --- .../datehistogram/CountDateHistogramFacetCollector.java | 2 -- .../test/integration/search/facet/SimpleFacetsTests.java | 9 +++++++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/modules/elasticsearch/src/main/java/org/elasticsearch/search/facet/datehistogram/CountDateHistogramFacetCollector.java b/modules/elasticsearch/src/main/java/org/elasticsearch/search/facet/datehistogram/CountDateHistogramFacetCollector.java index 6d548349f8d..bf84943b457 100644 --- a/modules/elasticsearch/src/main/java/org/elasticsearch/search/facet/datehistogram/CountDateHistogramFacetCollector.java +++ b/modules/elasticsearch/src/main/java/org/elasticsearch/search/facet/datehistogram/CountDateHistogramFacetCollector.java @@ -115,8 +115,6 @@ public class CountDateHistogramFacetCollector extends AbstractFacetCollector { public static class IntervalDateHistogramProc extends DateHistogramProc { - private final TLongLongHashMap counts = new TLongLongHashMap(); - private final long interval; public IntervalDateHistogramProc(long interval) { diff --git a/modules/test/integration/src/test/java/org/elasticsearch/test/integration/search/facet/SimpleFacetsTests.java b/modules/test/integration/src/test/java/org/elasticsearch/test/integration/search/facet/SimpleFacetsTests.java index 5dea2161eb4..c2c645ea977 100644 --- a/modules/test/integration/src/test/java/org/elasticsearch/test/integration/search/facet/SimpleFacetsTests.java +++ b/modules/test/integration/src/test/java/org/elasticsearch/test/integration/search/facet/SimpleFacetsTests.java @@ -1229,6 +1229,7 @@ public class SimpleFacetsTests extends AbstractNodesTests { .addFacet(dateHistogramFacet("stats2").field("date").interval("day").zone("-02:00")) .addFacet(dateHistogramFacet("stats3").field("date").valueField("num").interval("day").zone("-02:00")) .addFacet(dateHistogramFacet("stats4").field("date").valueScript("doc['num'].value * 2").interval("day").zone("-02:00")) + .addFacet(dateHistogramFacet("stats5").field("date").interval("24h")) .execute().actionGet(); if (searchResponse.failedShards() > 0) { @@ -1277,6 +1278,14 @@ public class SimpleFacetsTests extends AbstractNodesTests { assertThat(facet.entries().get(1).time(), equalTo(timeInMillis("2009-03-05", DateTimeZone.forOffsetHours(-2)))); assertThat(facet.entries().get(1).count(), equalTo(2l)); assertThat(facet.entries().get(1).total(), equalTo(10d)); + + facet = searchResponse.facets().facet("stats5"); + assertThat(facet.name(), equalTo("stats5")); + assertThat(facet.entries().size(), equalTo(2)); + assertThat(facet.entries().get(0).time(), equalTo(utcTimeInMillis("2009-03-05"))); + assertThat(facet.entries().get(0).count(), equalTo(2l)); + assertThat(facet.entries().get(1).time(), equalTo(utcTimeInMillis("2009-03-06"))); + assertThat(facet.entries().get(1).count(), equalTo(1l)); } @Test public void testTermsStatsFacets() throws Exception {