optimize automatonquery ----------------------- Key: LUCENE-2351 URL: https://issues.apache.org/jira/browse/LUCENE-2351 Project: Lucene - Java Issue Type: Improvement Components: Search Affects Versions: Flex Branch Reporter: Robert Muir Priority: Minor Fix For: Flex Branch
Mike found a few cases in flex where we have some bad behavior with automatonquery. The problem is similar to a database query planner, where sometimes simply doing a full table scan is faster than using an index. We can optimize automatonquery a little bit, and get better performance for fuzzy,wildcard,regex queries. Here is a list of ideas: * create commonSuffixRef for infinite automata, not just really-bad linear scan cases * do a null check rather than populating an empty commonSuffixRef * localize the 'linear' case to not seek, but instead scan, when ping-ponging against loops in the state machine * add a mechanism to enable/disable the terms dict cache, e.g. we can disable it for infinite cases, and maybe fuzzy N>1 also. * change the use of BitSet to OpenBitSet or long[] gen for path-tracking * optimize the backtracking code where it says /* String is good to go as-is */, this need not be a full run(), I think... -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org For additional commands, e-mail: java-dev-h...@lucene.apache.org