List of usage examples for org.apache.solr.core SolrCore getSearcher
public RefCounted<SolrIndexSearcher> getSearcher(boolean forceNew, boolean returnSearcher, final Future[] waitSearcher)
From source file:org.alfresco.solr.AlfrescoCoreAdminTester.java
License:Open Source License
private void checkAuth(SolrQueryResponse rsp, SolrCore core, AlfrescoSolrDataModel dataModel, long count) throws IOException, org.apache.lucene.queryparser.classic.ParseException { NamedList<Object> report = new SimpleOrderedMap<Object>(); rsp.add("Auth", report); RefCounted<SolrIndexSearcher> refCounted = null; try {/*from w w w .j a va2 s.c om*/ refCounted = core.getSearcher(false, true, null); SolrIndexSearcher solrIndexSearcher = refCounted.get(); testFTSQuery(dataModel, report, solrIndexSearcher, "TEXT:\"Test\"", (int) count, null, null, null); testFTSQuery(dataModel, report, solrIndexSearcher, "TEXT:\"doc\"", (int) count, null, null, null); testFTSQuery(dataModel, report, solrIndexSearcher, "TEXT:\"number\"", (int) count, null, null, null); testFTSQuery(dataModel, report, solrIndexSearcher, "TEXT:\"1\"", (int) count, null, null, null); testFTSQuery(dataModel, report, solrIndexSearcher, "AUTHORITY:\"READER-0\"", (int) count, null, null, null); buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 8); buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 9); buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 10); buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 98); buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 99); buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 100); buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 998); buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 999); buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 1000); buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 9998); buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 9999); buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 10000); buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 10000); buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 10000); buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 20000); buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 20000); buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 20000); // buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 100000); // buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 1000000); // buildAndRunAuthQuery(dataModel, count, report, solrIndexSearcher, 10000000); } finally { if (refCounted != null) { refCounted.decref(); } } }
From source file:org.alfresco.solr.AlfrescoCoreAdminTester.java
License:Open Source License
/** * @param after/*from w ww . j a v a2 s .c o m*/ * @param core * @param dataModel * @throws IOException * @throws org.apache.lucene.queryparser.classic.ParseException */ private void testChildNameEscaping(NamedList<Object> after, SolrCore core, AlfrescoSolrDataModel dataModel, NodeRef rootNodeRef) throws IOException, org.apache.lucene.queryparser.classic.ParseException { String COMPLEX_LOCAL_NAME = "\u0020\u0060\u00ac\u00a6\u0021\"\u00a3\u0024\u0025\u005e\u0026\u002a\u0028\u0029\u002d\u005f\u003d\u002b\t\n\\\u0000\u005b\u005d\u007b\u007d\u003b\u0027\u0023\u003a\u0040\u007e\u002c\u002e\u002f\u003c\u003e\u003f\\u007c\u005f\u0078\u0054\u0036\u0035\u0041\u005f"; String NUMERIC_LOCAL_NAME = "12Woof12"; NodeRef childNameEscapingNodeRef = new NodeRef(new StoreRef("workspace", "SpacesStore"), createGUID()); QName childNameEscapingQName = QName.createQName(NamespaceService.CONTENT_MODEL_1_0_URI, COMPLEX_LOCAL_NAME); QName pathChildNameEscapingQName = QName.createQName(NamespaceService.CONTENT_MODEL_1_0_URI, ISO9075.encode(COMPLEX_LOCAL_NAME)); ChildAssociationRef complexCAR = new ChildAssociationRef(ContentModel.ASSOC_CHILDREN, rootNodeRef, childNameEscapingQName, childNameEscapingNodeRef, true, 0); addNode(core, dataModel, 1, 17, 1, testSuperType, null, null, null, "system", new ChildAssociationRef[] { complexCAR }, new NodeRef[] { rootNodeRef }, new String[] { "/" + pathChildNameEscapingQName.toString() }, childNameEscapingNodeRef, true); NodeRef numericNameEscapingNodeRef = new NodeRef(new StoreRef("workspace", "SpacesStore"), createGUID()); QName numericNameEscapingQName = QName.createQName(NamespaceService.CONTENT_MODEL_1_0_URI, NUMERIC_LOCAL_NAME); QName pathNumericNameEscapingQName = QName.createQName(NamespaceService.CONTENT_MODEL_1_0_URI, ISO9075.encode(NUMERIC_LOCAL_NAME)); ChildAssociationRef numericCAR = new ChildAssociationRef(ContentModel.ASSOC_CHILDREN, rootNodeRef, numericNameEscapingQName, numericNameEscapingNodeRef, true, 0); addNode(core, dataModel, 1, 18, 1, testSuperType, null, null, null, "system", new ChildAssociationRef[] { numericCAR }, new NodeRef[] { rootNodeRef }, new String[] { "/" + pathNumericNameEscapingQName.toString() }, numericNameEscapingNodeRef, true); NamedList<Object> report = new SimpleOrderedMap<Object>(); after.add("TestChildNameEscaping", report); RefCounted<SolrIndexSearcher> refCounted = null; try { refCounted = core.getSearcher(false, true, null); SolrIndexSearcher solrIndexSearcher = refCounted.get(); testQuery(dataModel, report, solrIndexSearcher, "PATH:\"/cm:" + ISO9075.encode(COMPLEX_LOCAL_NAME) + "\"", 1); testQuery(dataModel, report, solrIndexSearcher, "PATH:\"/cm:" + ISO9075.encode(NUMERIC_LOCAL_NAME) + "\"", 1); } finally { if (refCounted != null) { refCounted.decref(); } } }
From source file:org.alfresco.solr.AlfrescoCoreAdminTester.java
License:Open Source License
private void checkRootNode(NamedList<Object> before, SolrCore core, AlfrescoSolrDataModel dataModel) throws IOException, org.apache.lucene.queryparser.classic.ParseException { NamedList<Object> report = new SimpleOrderedMap<Object>(); before.add("RootNode", report); RefCounted<SolrIndexSearcher> refCounted = null; try {/*from ww w. j av a 2 s . c o m*/ refCounted = core.getSearcher(false, true, null); SolrIndexSearcher solrIndexSearcher = refCounted.get(); testQuery(dataModel, report, solrIndexSearcher, "PATH:\"/\"", 1); testQuery(dataModel, report, solrIndexSearcher, "PATH:\"/.\"", 1); } finally { if (refCounted != null) { refCounted.decref(); } } }
From source file:org.alfresco.solr.AlfrescoCoreAdminTester.java
License:Open Source License
private void checkQNames(NamedList<Object> before, SolrCore core, AlfrescoSolrDataModel dataModel) throws IOException, org.apache.lucene.queryparser.classic.ParseException { NamedList<Object> report = new SimpleOrderedMap<Object>(); before.add("QNames", report); RefCounted<SolrIndexSearcher> refCounted = null; try {//from w w w . j ava2 s . c o m refCounted = core.getSearcher(false, true, null); SolrIndexSearcher solrIndexSearcher = refCounted.get(); testQuery(dataModel, report, solrIndexSearcher, "QNAME:\"nine\"", 1); testQuery(dataModel, report, solrIndexSearcher, "PRIMARYASSOCTYPEQNAME:\"cm:contains\"", 11); testQuery(dataModel, report, solrIndexSearcher, "PRIMARYASSOCTYPEQNAME:\"sys:children\"", 4); testQuery(dataModel, report, solrIndexSearcher, "ASSOCTYPEQNAME:\"cm:contains\"", 11); testQuery(dataModel, report, solrIndexSearcher, "ASSOCTYPEQNAME:\"sys:children\"", 5); } finally { if (refCounted != null) { refCounted.decref(); } } }
From source file:org.alfresco.solr.AlfrescoCoreAdminTester.java
License:Open Source License
private void checkType(NamedList<Object> before, SolrCore core, AlfrescoSolrDataModel dataModel) throws IOException, org.apache.lucene.queryparser.classic.ParseException { NamedList<Object> report = new SimpleOrderedMap<Object>(); before.add("Type", report); RefCounted<SolrIndexSearcher> refCounted = null; try {/*from ww w . j a v a 2s . c om*/ refCounted = core.getSearcher(false, true, null); SolrIndexSearcher solrIndexSearcher = refCounted.get(); testQuery(dataModel, report, solrIndexSearcher, "TYPE:\"" + testType.toString() + "\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TYPE:\"" + testType.toPrefixString(dataModel.getNamespaceDAO()) + "\"", 1); testQuery(dataModel, report, solrIndexSearcher, "EXACTTYPE:\"" + testType.toString() + "\"", 1); testQuery(dataModel, report, solrIndexSearcher, "EXACTTYPE:\"" + testType.toPrefixString(dataModel.getNamespaceDAO()) + "\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TYPE:\"" + testSuperType.toString() + "\"", 13); testQuery(dataModel, report, solrIndexSearcher, "TYPE:\"" + testSuperType.toPrefixString(dataModel.getNamespaceDAO()) + "\"", 13); testQuery(dataModel, report, solrIndexSearcher, "TYPE:\"" + ContentModel.TYPE_CONTENT.toString() + "\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TYPE:\"cm:content\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TYPE:\"cm:content0\"", 0); testQuery(dataModel, report, solrIndexSearcher, "TYPE:\"cm:CONTENT\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TYPE:\"cm:CONTENT1\"", 0); testQuery(dataModel, report, solrIndexSearcher, "TYPE:\"CM:CONTENT\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TYPE:\"CM:CONTENT1\"", 0); testQuery(dataModel, report, solrIndexSearcher, "TYPE:\"CONTENT\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TYPE:\"CONTENT1\"", 0); testQuery(dataModel, report, solrIndexSearcher, "TYPE:\"content\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TYPE:\"content0\"", 0); testQuery(dataModel, report, solrIndexSearcher, "ASPECT:\"flubber\"", 0); testQuery(dataModel, report, solrIndexSearcher, "TYPE:\"" + ContentModel.TYPE_THUMBNAIL.toString() + "\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TYPE:\"" + ContentModel.TYPE_THUMBNAIL.toString() + "\" TYPE:\"" + ContentModel.TYPE_CONTENT.toString() + "\"", 2); testQuery(dataModel, report, solrIndexSearcher, "EXACTTYPE:\"" + testSuperType.toString() + "\"", 12); testQuery(dataModel, report, solrIndexSearcher, "EXACTTYPE:\"" + testSuperType.toPrefixString(dataModel.getNamespaceDAO()) + "\"", 12); testQuery(dataModel, report, solrIndexSearcher, "ASPECT:\"" + testAspect.toString() + "\"", 1); testQuery(dataModel, report, solrIndexSearcher, "ASPECT:\"" + testAspect.toPrefixString(dataModel.getNamespaceDAO()) + "\"", 1); testQuery(dataModel, report, solrIndexSearcher, "EXACTASPECT:\"" + testAspect.toString() + "\"", 1); testQuery(dataModel, report, solrIndexSearcher, "EXACTASPECT:\"" + testAspect.toPrefixString(dataModel.getNamespaceDAO()) + "\"", 1); } finally { if (refCounted != null) { refCounted.decref(); } } }
From source file:org.alfresco.solr.AlfrescoCoreAdminTester.java
License:Open Source License
private void checkText(NamedList<Object> before, SolrCore core, AlfrescoSolrDataModel dataModel) throws IOException, org.apache.lucene.queryparser.classic.ParseException { NamedList<Object> report = new SimpleOrderedMap<Object>(); before.add("Text", report); RefCounted<SolrIndexSearcher> refCounted = null; try {//from www . j a v a 2 s . co m refCounted = core.getSearcher(false, true, null); SolrIndexSearcher solrIndexSearcher = refCounted.get(); testQuery(dataModel, report, solrIndexSearcher, "TEXT:fox AND TYPE:\"" + ContentModel.PROP_CONTENT.toString() + "\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:fox @cm\\:name:fox", 1); testQuery(dataModel, report, solrIndexSearcher, "d\\:content:fox d\\:text:fox", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:fo AND TYPE:\"" + ContentModel.PROP_CONTENT.toString() + "\"", 0); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"the\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"and\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"over the lazy\"", 1); // Depends on stop words being removed .... which depends on the configuration //testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"over a lazy\"", 1); testQuery(dataModel, report, solrIndexSearcher, "\\@" + SearchLanguageConversion.escapeLuceneQuery( QName.createQName(TEST_NAMESPACE, "text-indexed-stored-tokenised-atomic").toString()) + ":*a*", 1); testQuery(dataModel, report, solrIndexSearcher, "\\@" + SearchLanguageConversion.escapeLuceneQuery( QName.createQName(TEST_NAMESPACE, "text-indexed-stored-tokenised-atomic").toString()) + ":*A*", 1); testQuery(dataModel, report, solrIndexSearcher, "\\@" + SearchLanguageConversion.escapeLuceneQuery( QName.createQName(TEST_NAMESPACE, "text-indexed-stored-tokenised-atomic").toString()) + ":\"*a*\"", 1); testQuery(dataModel, report, solrIndexSearcher, "\\@" + SearchLanguageConversion.escapeLuceneQuery( QName.createQName(TEST_NAMESPACE, "text-indexed-stored-tokenised-atomic").toString()) + ":\"*A*\"", 1); testQuery(dataModel, report, solrIndexSearcher, "\\@" + SearchLanguageConversion.escapeLuceneQuery( QName.createQName(TEST_NAMESPACE, "text-indexed-stored-tokenised-atomic").toString()) + ":*s*", 1); testQuery(dataModel, report, solrIndexSearcher, "\\@" + SearchLanguageConversion.escapeLuceneQuery( QName.createQName(TEST_NAMESPACE, "text-indexed-stored-tokenised-atomic").toString()) + ":*S*", 1); testQuery(dataModel, report, solrIndexSearcher, "\\@" + SearchLanguageConversion.escapeLuceneQuery( QName.createQName(TEST_NAMESPACE, "text-indexed-stored-tokenised-atomic").toString()) + ":\"*s*\"", 1); testQuery(dataModel, report, solrIndexSearcher, "\\@" + SearchLanguageConversion.escapeLuceneQuery( QName.createQName(TEST_NAMESPACE, "text-indexed-stored-tokenised-atomic").toString()) + ":\"*S*\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:*A*", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"*a*\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"*A*\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:*a*", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:*Z*", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"*z*\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"*Z*\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:*z*", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:laz*", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:laz~", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:la?y", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:?a?y", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:*azy", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:*az*", 1); // Accents testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"\u00E0\u00EA\u00EE\u00F0\u00F1\u00F6\u00FB\u00FF\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"aeidnouy\"", 1); // FTS testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"fox\"", 1); testQuery(dataModel, report, solrIndexSearcher, "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ":\"fox\"", 1); testQuery(dataModel, report, solrIndexSearcher, "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ".mimetype:\"text/plain\"", 1); testQuery(dataModel, report, solrIndexSearcher, "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ".locale:\"en_GB\"", 1); testQuery(dataModel, report, solrIndexSearcher, "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ".locale:en_*", 1); testQuery(dataModel, report, solrIndexSearcher, "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ".locale:e*_GB", 1); testQuery(dataModel, report, solrIndexSearcher, "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ".size:\"298\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"fox\"", 0, null, new String[] { "@" + ContentModel.PROP_NAME.toString() }, null); testQuery( dataModel, report, solrIndexSearcher, "TEXT:\"fox\"", 1, null, new String[] { "@" + ContentModel.PROP_NAME.toString(), "@" + ContentModel.PROP_CONTENT.toString() }, null); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"cabbage\"", 15, null, new String[] { "@" + orderText.toString() }, null); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"cab*\"", 15, null, new String[] { "@" + orderText.toString() }, null); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"*bage\"", 15, null, new String[] { "@" + orderText.toString() }, null); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"*ba*\"", 15, null, new String[] { "@" + orderText.toString() }, null); testQuery(dataModel, report, solrIndexSearcher, "TEXT:cabbage", 15, null, new String[] { "@" + orderText.toString() }, null); testQuery(dataModel, report, solrIndexSearcher, "TEXT:*cab*", 15, Locale.ENGLISH, new String[] { "@" + orderText.toString() }, null); testQuery(dataModel, report, solrIndexSearcher, "TEXT:*bage", 15, null, new String[] { "@" + orderText.toString() }, null); // testQuery(dataModel, report, solrIndexSearcher, "TEXT:dabbage~0.3", 15, null, new String[] { "@" // + orderText.toString() }, null); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"alfresco\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"alfresc?\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"alfres??\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"alfre???\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"alfr????\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"alf?????\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"al??????\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"a???????\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"????????\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"a??re???\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"?lfresco\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"??fresco\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"???resco\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"????esco\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"?????sco\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"??????co\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"???????o\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"???res?o\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"????e?co\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"????e?c?\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"???re???\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"alfresc*\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"alfres*\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"alfre*\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"alfr*\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"alf*\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"al*\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"a*\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"a****\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"*lfresco\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"*fresco\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"*resco\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"*esco\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"*sco\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"*co\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"*o\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"****lf**sc***\"", 1); // Lucene wildcard bug matches when it should not .... //testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"*??*lf**sc***\"", 0); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"??lf**sc***\"", 0); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"alfresc*tutorial\"", 0); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"alf* tut*\"", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:\"*co *al\"", 1); } finally { if (refCounted != null) { refCounted.decref(); } } }
From source file:org.alfresco.solr.AlfrescoCoreAdminTester.java
License:Open Source License
private void checkDataType(NamedList<Object> before, SolrCore core, AlfrescoSolrDataModel dataModel) throws IOException, org.apache.lucene.queryparser.classic.ParseException { NamedList<Object> report = new SimpleOrderedMap<Object>(); before.add("DataType", report); RefCounted<SolrIndexSearcher> refCounted = null; try {// w w w . j a v a 2 s. co m refCounted = core.getSearcher(false, true, null); SolrIndexSearcher solrIndexSearcher = refCounted.get(); testQuery(dataModel, report, solrIndexSearcher, "d\\:double:\"5.6\"", 1); testQuery(dataModel, report, solrIndexSearcher, "d\\:content:\"fox\"", 1); testQuery(dataModel, report, solrIndexSearcher, "d\\:content:\"fox\"", 1, Locale.US, null, null); } finally { if (refCounted != null) { refCounted.decref(); } } }
From source file:org.alfresco.solr.AlfrescoCoreAdminTester.java
License:Open Source License
private void checkNullAndUnset(NamedList<Object> before, SolrCore core, AlfrescoSolrDataModel dataModel) throws IOException, InvalidQNameException, org.apache.lucene.queryparser.classic.ParseException { NamedList<Object> report = new SimpleOrderedMap<Object>(); before.add("ISNULL/ISUNSET/ISNOTNULL", report); RefCounted<SolrIndexSearcher> refCounted = null; try {/*ww w .ja v a 2 s. c o m*/ refCounted = core.getSearcher(false, true, null); SolrIndexSearcher solrIndexSearcher = refCounted.get(); testQuery(dataModel, report, solrIndexSearcher, "ISUNSET:\"" + QName.createQName(TEST_NAMESPACE, "null").toString() + "\"", 0); testQuery(dataModel, report, solrIndexSearcher, "ISNULL:\"" + QName.createQName(TEST_NAMESPACE, "null").toString() + "\"", 16); testQuery(dataModel, report, solrIndexSearcher, "EXISTS:\"" + QName.createQName(TEST_NAMESPACE, "null").toString() + "\"", 1); testQuery(dataModel, report, solrIndexSearcher, "ISNOTNULL:\"" + QName.createQName(TEST_NAMESPACE, "null").toString() + "\"", 0); testQuery(dataModel, report, solrIndexSearcher, "ISUNSET:\"" + QName.createQName(TEST_NAMESPACE, "path-ista").toString() + "\"", 0); testQuery(dataModel, report, solrIndexSearcher, "ISNULL:\"" + QName.createQName(TEST_NAMESPACE, "path-ista").toString() + "\"", 15); testQuery(dataModel, report, solrIndexSearcher, "ISNOTNULL:\"" + QName.createQName(TEST_NAMESPACE, "path-ista").toString() + "\"", 1); testQuery(dataModel, report, solrIndexSearcher, "EXISTS:\"" + QName.createQName(TEST_NAMESPACE, "path-ista").toString() + "\"", 1); testQuery(dataModel, report, solrIndexSearcher, "ISUNSET:\"" + QName.createQName(TEST_NAMESPACE, "aspectProperty").toString() + "\"", 0); testQuery(dataModel, report, solrIndexSearcher, "ISNULL:\"" + QName.createQName(TEST_NAMESPACE, "aspectProperty").toString() + "\"", 15); testQuery(dataModel, report, solrIndexSearcher, "ISNOTNULL:\"" + QName.createQName(TEST_NAMESPACE, "aspectProperty").toString() + "\"", 1); testQuery(dataModel, report, solrIndexSearcher, "EXISTS:\"" + QName.createQName(TEST_NAMESPACE, "aspectProperty").toString() + "\"", 1); } finally { if (refCounted != null) { refCounted.decref(); } } }
From source file:org.alfresco.solr.AlfrescoCoreAdminTester.java
License:Open Source License
private void checkNonField(NamedList<Object> before, SolrCore core, AlfrescoSolrDataModel dataModel) throws IOException, org.apache.lucene.queryparser.classic.ParseException { NamedList<Object> report = new SimpleOrderedMap<Object>(); before.add("NonField", report); RefCounted<SolrIndexSearcher> refCounted = null; try {/*w ww . ja va 2s . co m*/ refCounted = core.getSearcher(false, true, null); SolrIndexSearcher solrIndexSearcher = refCounted.get(); testQuery(dataModel, report, solrIndexSearcher, "TEXT:fox", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:fo*", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:f*x", 1); testQuery(dataModel, report, solrIndexSearcher, "TEXT:*ox", 1); testQuery(dataModel, report, solrIndexSearcher, "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ":fox", 1); testQuery(dataModel, report, solrIndexSearcher, "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ":fo*", 1); testQuery(dataModel, report, solrIndexSearcher, "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ":f*x", 1); testQuery(dataModel, report, solrIndexSearcher, "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ":*ox", 1); testQuery(dataModel, report, solrIndexSearcher, "@" + SearchLanguageConversion.escapeLuceneQuery( ContentModel.PROP_CONTENT.toPrefixString(dataModel.getNamespaceDAO())) + ":fox", 1); testQuery(dataModel, report, solrIndexSearcher, "@" + SearchLanguageConversion.escapeLuceneQuery( ContentModel.PROP_CONTENT.toPrefixString(dataModel.getNamespaceDAO())) + ":fo*", 1); testQuery(dataModel, report, solrIndexSearcher, "@" + SearchLanguageConversion.escapeLuceneQuery( ContentModel.PROP_CONTENT.toPrefixString(dataModel.getNamespaceDAO())) + ":f*x", 1); testQuery(dataModel, report, solrIndexSearcher, "@" + SearchLanguageConversion.escapeLuceneQuery( ContentModel.PROP_CONTENT.toPrefixString(dataModel.getNamespaceDAO())) + ":*ox", 1); } finally { if (refCounted != null) { refCounted.decref(); } } }
From source file:org.alfresco.solr.AlfrescoCoreAdminTester.java
License:Open Source License
private void checkRanges(NamedList<Object> before, SolrCore core, AlfrescoSolrDataModel dataModel) throws IOException, org.apache.lucene.queryparser.classic.ParseException { NamedList<Object> report = new SimpleOrderedMap<Object>(); before.add("Ranges", report); RefCounted<SolrIndexSearcher> refCounted = null; try {//from w w w . j a v a 2 s. c o m refCounted = core.getSearcher(false, true, null); SolrIndexSearcher solrIndexSearcher = refCounted.get(); testQuery(dataModel, report, solrIndexSearcher, "\\@" + SearchLanguageConversion.escapeLuceneQuery(orderText.toString()) + ":[a TO b]", 1); testQuery(dataModel, report, solrIndexSearcher, "\\@" + SearchLanguageConversion.escapeLuceneQuery(orderText.toString()) + ":[a TO \uFFFF]", 14); testQuery(dataModel, report, solrIndexSearcher, "\\@" + SearchLanguageConversion.escapeLuceneQuery(orderText.toString()) + ":[* TO b]", 2); testQuery(dataModel, report, solrIndexSearcher, "\\@" + SearchLanguageConversion.escapeLuceneQuery(orderText.toString()) + ":[\u0000 TO b]", 2); testQuery(dataModel, report, solrIndexSearcher, "\\@" + SearchLanguageConversion.escapeLuceneQuery(orderText.toString()) + ":[d TO \uFFFF]", 12); testQuery(dataModel, report, solrIndexSearcher, "\\@" + SearchLanguageConversion.escapeLuceneQuery(orderText.toString()) + ":[d TO *]", 12); } finally { if (refCounted != null) { refCounted.decref(); } } }