-
Notifications
You must be signed in to change notification settings - Fork 24.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ML] Scrolling datafeeds leave open scroll contexts on error #40772
Comments
Pinging @elastic/ml-core |
dimitris-athanasiou
added a commit
to dimitris-athanasiou/elasticsearch
that referenced
this issue
Apr 3, 2019
dimitris-athanasiou
added a commit
that referenced
this issue
Apr 3, 2019
dimitris-athanasiou
added a commit
to dimitris-athanasiou/elasticsearch
that referenced
this issue
Apr 3, 2019
This was referenced Apr 3, 2019
dimitris-athanasiou
added a commit
to dimitris-athanasiou/elasticsearch
that referenced
this issue
Apr 3, 2019
dimitris-athanasiou
added a commit
that referenced
this issue
Apr 4, 2019
dimitris-athanasiou
added a commit
that referenced
this issue
Apr 4, 2019
dimitris-athanasiou
added a commit
that referenced
this issue
Apr 5, 2019
gurkankaymak
pushed a commit
to gurkankaymak/elasticsearch
that referenced
this issue
May 27, 2019
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Datafeeds that use search/scroll should be clearing the scroll contexts they use after they are done. While they do so under normal circumstances, if there is an error thrown during the search request it appears they leave the scroll contexts open. Given we set the timeout to be
30m
, when an index pattern is used that matches many shards, this could mean quite a few of scroll contexts left open for a while. In combination with the change of the default value for the cluster settingsearch.max_open_scroll_context
from unlimited to 500, this could lead to the cluster rejecting other search requests while those scroll contexts wait to be cleared.Steps to reproduce
There are many ways to reproduce this. Here is one.
foo-1
with a time field (mapped asdate
) and some docs.e.g.
foo-2
without that time field.e.g.
foo-*
Observed behaviour
Thee datafeed should have an error notification that the search failed because not all indices have a
time
field to sort on. This is as expected.Now do:
and look for
search.open_contexts
. The number there should be0
(assuming nothing else is using the cluster`. However, it is not as the datafeed did not clear the scroll context.The text was updated successfully, but these errors were encountered: