Apache Solr™ and Apache Lucene™ limitations
This topic lists the Solr and Apache Lucene™ limitations that apply to Astra Search.
-
The 2.1 billion records limitation, per index on each node, as described in Lucene limitations.
-
The 1024 maxBoolean clause limit in SOLR-4586.
-
Limitations and known Solr issues apply to Astra Search queries. For example: incorrect SORT results for tokenized text fields.
Solr field name policy
This policy applies to indexed field names:
-
Every field must have a
name. -
Field names must consist of alphanumeric or underscore characters only.
-
Fields cannot start with a digit.
-
Names with both leading and trailing underscores (for example,
version) are reserved.
Non-compliant field names are not supported from all components. Backward compatibility is not guaranteed.
frange NOW doesn’t expand
When issuing a filter query (fq) using the frange function, such as:
transaction_date:{!frange cost=200 l=NOW/DAY-179DAYS u=NOW/DAY+1DAY incl=true incu=false}transaction_date
The NOW placeholder does not expand into its actual value in the context of the filter cache.
As a result, the same filter cache key is used for queries that are based on different NOW values:
"+FunctionRangeQuery(ConstantScore(frange(date(transaction_date)):[NOW/DAY-179DAYS TO NOW/DAY+1DAY]))",
compositefilter(positiveQueries=[+ConstantScore(frange(date(value)):[NOW/DAY-179DAYS TO NOW/DAY+1DAY])],negativeQueries=[_parent_:F])
This behavior results in a collision of entries in the filter cache.
To work around this limitation, you can:
-
Use the
[… TO …]syntax for ranges instead offrange. -
Use the
cache=falseparser parameter instead of caching queries withfrange.