`search_after` cannot be used in a scroll context. – Elasticsearch Error How To Solve Related Issues

`search_after` cannot be used in a scroll context. – Elasticsearch Error How To Solve Related Issues

Updated: July-20

Elasticsearch Version: 1.7-8.0

Before you begin reading this guide, we recommend you try running the Elasticsearch Error Check-Up  which can resolve issues causing many errors 


This guide will help you check for common problems that cause the log “`search_after` cannot be used in a scroll context.” to appear. It’s important to understand the issues related to the log, so to get started, read the general overview on common issues and tips related to the Elasticsearch concepts: scroll, search.

Advanced users might want to skip right to the common problems section in each concept or try running the Check-Up which analyses ES to discover the cause of many errors and provides suitable actionable recommendations (free tool that requires no installation). 

Log Context

Log”`search_after` cannot be used in a scroll context.”classname  is SearchService.java
We extracted the following from Elasticsearch source code for those seeking an in-depth context :

if (source.stats() != null) {
  if (CollectionUtils.isEmpty(source.searchAfter()) == false) {
  if (context.scrollContext() != null) {
  throw new SearchException(shardTarget; "`search_after` cannot be used in a scroll context.");
  if (context.from() > 0) {
  throw new SearchException(shardTarget; "`from` parameter must be set to 0 when `search_after` is used.");
  FieldDoc fieldDoc = SearchAfterBuilder.buildFieldDoc(context.sort(); source.searchAfter());


Related issues to this log

We have gathered selected Q&A from the community and issues from Github, that can help fix related issues please review the following for further information :

1 How do I retrieve more than 10000 results/events in Elastic-search -views 49,110 ,score 31

ElasticSearch documentation says not to use scroll for user requests, only for data transformation -views   6,033,score 11



About Opster

Opster detects, prevents, optimizes and automates everything needed to run mission-critical Elasticsearch

Find Configuration Errors

Analyze Now