[ https://issues.apache.org/jira/browse/SOLR-218?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12605451#action_12605451 ]
Hoss Man commented on SOLR-218: ------------------------------- In response to a question on the mailing list about how best to tackle this... It's not documented very well (or: at all) at the moment, but it's now possible to declare "<queryParser>" in your solrconfig.xml, just like <requestHandler>" ... and those each correspond to a QParserPlugin. The LuceneQParserPlugin could be modified to take in some init options and use them in it's "createParser" method to set options on the underlying SolrQueryParser. people could declare multiple instances of the LuceneQParserPlugin with differnet names, and use them by specifying a defType in their request -- or they could give one of those instance the name "lucene" and it will be used by default. > Support for Lucene QueryParser properties via solrconfig.xml file > ----------------------------------------------------------------- > > Key: SOLR-218 > URL: https://issues.apache.org/jira/browse/SOLR-218 > Project: Solr > Issue Type: Improvement > Components: search > Affects Versions: 1.1.0 > Reporter: Michael Pelz-Sherman > > The SolrQueryParser class, which extends Lucene's QueryParser class, does not > provide any way of setting the various QueryParser properties via the solr > config file (solrconfig.xml). These properties include: > allowLeadingWildcard (Set to true to allow * and ? as the first character of > a PrefixQuery and WildcardQuery) > dateResolution: Sets the default date resolution used by RangeQueries for > fields for which no specific date resolutions has been set. > defaultOperator: Sets the boolean operator of the QueryParser. > fuzzyMinSim: Set the minimum similarity for fuzzy queries. > locale: Set locale used by date range parsing. > lowercaseExpandedTerms: Whether terms of wildcard, prefix, fuzzy and range > queries are to be automatically lower-cased or not. > phraseSlop: Sets the default slop for phrases. > useOldRangeQuery: By default QueryParser uses new ConstantScoreRangeQuery in > preference to RangeQuery for range queries. > This can be achieved by calling the setter methods for these properties in > the SolrQueryParser constructor, > public SolrQueryParser(IndexSchema schema, String defaultField) { > super(defaultField == null ? schema.getDefaultSearchFieldName() : > defaultField, schema.getQueryAnalyzer()); > this.schema = schema; > > setAllowLeadingWildcard(SolrConfig.config.getBool("query/setAllowLeadingWildcard")); > > setLowercaseExpandedTerms(SolrConfig.config.getBool("query/lowerCaseExpandedTerms")); > } > In addition, solr should not modify these values from the defaults provided > by Lucene, as it currently does by calling setLowercaseExpandedTerms(false) > in this method. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.