Are you using the out of the box Lucene QueryParser? It will automatically detect wildcard queries by the presence of * or ? chars. If the user input does not contain these characters a plain TermQuery is used.
BooleanQuery.setMaxClauseCount can be used to control the upper limit on terms produced by Wildcard/Fuzzy Queries. If this limit is exceeded (e.g when searching for something like "a*" ) then an exception is thrown. Cheers Mark ----- Original Message ---- From: John Byrne <[EMAIL PROTECTED]> To: java-user@lucene.apache.org Sent: Wednesday, 26 September, 2007 9:48:17 AM Subject: Wildcard vs Term query Hi, I'm working my way through the Lucene In Action book, and there is one thing I need explained that I didn't find there; While wildcard queries are potentially slower than ordinary term queries, are they slower even if theyt don't contain a wildcard? Significantly slower? The reason I ask is that if we assume we are going to allow wildcards in a search engine, but we want to optimize, to take advantage of when they are NOT used, do we have to check for the presence of "*" or "?" in the term, and create the most appropriate query, or can I assume that when a wildcard is not present, the WildcardQuery will be as fast (or almost as fast) a a plain term query? Thanks in advance! John B. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] ___________________________________________________________ Yahoo! Answers - Got a question? Someone out there knows the answer. Try it now. http://uk.answers.yahoo.com/ --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]