You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Randy Fradin (JIRA)" <ji...@apache.org> on 2018/09/19 14:09:00 UTC

[jira] [Commented] (SOLR-6930) Provide "Circuit Breakers" For Expensive Solr Queries

    [ https://issues.apache.org/jira/browse/SOLR-6930?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16620639#comment-16620639 ] 

Randy Fradin commented on SOLR-6930:
------------------------------------

I would love to see this feature get implemented. Understandable that it would be disabled by default, but I'm operating exactly the type of large SolrCloud cluster with many clients that [~markrmiller@gmail.com] describes and having a circuit breaker would help everyone sleep better at night knowing one mistaken query can't take out a node by causing too much memory allocation.

I would think there should be a configurable "soft limit" and "hard limit" so you get a WARN in the logs if the soft limit is breached and the query is failed preemptively only if the hard limit is reached. That way if the memory cost of a query is creeping up due to growth in the data set, you can get an early warning that things are headed in a bad direction before queries start failing. In fact the INFO line that's logged with every query completion could include estimated memory required to complete the query.

Of course this sounds complex to implement and I'm not at all a Solr expert so I don't really know where to begin - any of the experts know in broad strokes what the memory estimation equation would look like ?

 

> Provide "Circuit Breakers" For Expensive Solr Queries
> -----------------------------------------------------
>
>                 Key: SOLR-6930
>                 URL: https://issues.apache.org/jira/browse/SOLR-6930
>             Project: Solr
>          Issue Type: Improvement
>          Components: search
>            Reporter: Mike Drob
>            Priority: Major
>
> Ref: http://www.elasticsearch.org/guide/en/elasticsearch/guide/current/_limiting_memory_usage.html
> ES currently allows operators to configure "circuit breakers" to preemptively fail queries that are estimated too large rather than allowing an OOM Exception to happen. We might be able to do the same thing.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org