Author: tommaso
Date: Wed Jun 13 07:35:43 2012
New Revision: 1349662
URL: http://svn.apache.org/viewvc?rev=1349662&view=rev
Log:
[DIRECTMEMORY-89] - introducing testing of executing one query multiple times
against document cache
Modified:
incubator/directmemory/trunk/integrations/solr/src/test/java/org/apache/directmemory/solr/SolrOffHeapIntegrationTest.java
incubator/directmemory/trunk/integrations/solr/src/test/resources/solr/conf/solrconfig.xml
Modified:
incubator/directmemory/trunk/integrations/solr/src/test/java/org/apache/directmemory/solr/SolrOffHeapIntegrationTest.java
URL:
http://svn.apache.org/viewvc/incubator/directmemory/trunk/integrations/solr/src/test/java/org/apache/directmemory/solr/SolrOffHeapIntegrationTest.java?rev=1349662&r1=1349661&r2=1349662&view=diff
==============================================================================
---
incubator/directmemory/trunk/integrations/solr/src/test/java/org/apache/directmemory/solr/SolrOffHeapIntegrationTest.java
(original)
+++
incubator/directmemory/trunk/integrations/solr/src/test/java/org/apache/directmemory/solr/SolrOffHeapIntegrationTest.java
Wed Jun 13 07:35:43 2012
@@ -21,6 +21,7 @@ import java.util.Map;
import org.apache.solr.SolrTestCaseJ4;
import org.apache.solr.common.util.NamedList;
import org.apache.solr.core.SolrInfoMBean;
+import org.apache.solr.request.SolrQueryRequest;
import org.junit.BeforeClass;
import org.junit.Test;
@@ -35,7 +36,7 @@ public class SolrOffHeapIntegrationTest
}
@Test
- public void testSingleQuery()
+ public void testSingleQueryWithQueryResultCache()
throws Exception
{
@@ -59,4 +60,33 @@ public class SolrOffHeapIntegrationTest
}
+ @Test
+ public void testSameQueryMultipleTimesWithDocumentCache()
+ throws Exception
+ {
+ // add a doc to Solr
+ assertU(adoc("id", "1", "text", "something is happening here"));
+ assertU(commit());
+ // repeat the query for some times
+ SolrQueryRequest req = req("text:something");
+ assertQ(req, "//*[@numFound='1']");
+ assertQ(req, "//*[@numFound='1']");
+ assertQ(req, "//*[@numFound='1']");
+ assertQ(req, "//*[@numFound='1']");
+
+ Map<String, SolrInfoMBean> infoRegistry =
h.getCore().getInfoRegistry();
+
+ // check the stats of the documentCache
+ SolrInfoMBean solrInfoMBean = infoRegistry.get("documentCache");
+ NamedList stats = solrInfoMBean.getStatistics();
+ Long lookups = (Long) stats.get("lookups");
+ assertEquals(Long.valueOf(8l), lookups);
+ Long inserts = (Long) stats.get("inserts");
+ assertEquals(Long.valueOf(1l), inserts);
+ Long hits = (Long) stats.get("hits");
+ assertEquals(Long.valueOf(7l), hits);
+
+
+ }
+
}
Modified:
incubator/directmemory/trunk/integrations/solr/src/test/resources/solr/conf/solrconfig.xml
URL:
http://svn.apache.org/viewvc/incubator/directmemory/trunk/integrations/solr/src/test/resources/solr/conf/solrconfig.xml?rev=1349662&r1=1349661&r2=1349662&view=diff
==============================================================================
---
incubator/directmemory/trunk/integrations/solr/src/test/resources/solr/conf/solrconfig.xml
(original)
+++
incubator/directmemory/trunk/integrations/solr/src/test/resources/solr/conf/solrconfig.xml
Wed Jun 13 07:35:43 2012
@@ -352,8 +352,9 @@
document ids (DocList) based on a query, a sort, and the range of
documents requested.
-->
- <documentCache class="solr.LRUCache" size="512"
- initialSize="512" autowarmCount="0"/>
+ <documentCache class="org.apache.directmemory.solr.SolrOffHeapCache"
size="10000"
+ initialSize="1000" autowarmCount="0" buffers="2"
+
serializerClassName="org.apache.directmemory.serialization.protostuff.ProtoStuffWithLinkedBufferSerializer"/>
<!--
documentCache caches Lucene Document objects (the stored fields