# Scroll Failure \[Solved\]

**URL:** <https://discuss.elastic.co/t/scroll-failure-solved/52966>\
**Category:** Elasticsearch\
**Created:** [June 16, 2016, 8:48am UTC](https://discuss.elastic.co/t/scroll-failure-solved/52966 "2016-06-16T08:48:30Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Nathan\_F](https://avatars.discourse-cdn.com/v4/letter/n/b5a626/32.png) [@Nathan\_F](https://discuss.elastic.co/u/Nathan_F)\
**Post date:** [June 16, 2016, 8:48am UTC](https://discuss.elastic.co/t/scroll-failure-solved/52966/1 "2016-06-16T08:48:30Z")

</div>

ES 1.7

When trying to scroll, I get the following:

{"error":"ElasticsearchIllegalArgumentException[Failed to decode scrollId]; nested: IOException[Bad Base64 input character decimal 123 in array position 0]; ","status":400}

Is there any simple way to work around this?

---

<div class="post-metadata">

**Author:** ![spinscale](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/spinscale/32/25011_2.png) [@spinscale](https://discuss.elastic.co/u/spinscale)\
**Post date:** [June 16, 2016, 9:18am UTC](https://discuss.elastic.co/t/scroll-failure-solved/52966/2 "2016-06-16T09:18:58Z")

</div>

Hey,

can you provide a full reproducible example so one can follow the steps that you took? Looks as if you maybe did not copy the full scrollId or your HTTP client somehow encoded it differently, but without a reproduction everything is just an assumption.

--Alex

---

<div class="post-metadata">

**Author:** ![Nathan\_F](https://avatars.discourse-cdn.com/v4/letter/n/b5a626/32.png) [@Nathan\_F](https://discuss.elastic.co/u/Nathan_F)\
**Post date:** [June 18, 2016, 4:39am UTC](https://discuss.elastic.co/t/scroll-failure-solved/52966/3 "2016-06-18T04:39:39Z")

</div>

```
curl -XGET 'localhost:9200/2016-06-16/_search?scroll=1m' -d '
{
  "sort": [
  "_doc"
  ]
}
'

```

Followed by:

```
curl -XGET 'localhost:9200/_search/scroll' -d'{
  "scroll" : "1m",
  "scroll_id" : "cXVlcnlBbmRGZXRjaDsxOzI5NjczMDotanF4VWl2TlFmYUg5TFl5QlNUVHRnOzA7"
}
'

```

Results in:

{"error":"ElasticsearchIllegalArgumentException[Failed to decode scrollId]; nested: IOException[Bad Base64 input character decimal 123 in array position 0]; ","status":400}

---

<div class="post-metadata">

**Author:** ![Nathan\_F](https://avatars.discourse-cdn.com/v4/letter/n/b5a626/32.png) [@Nathan\_F](https://discuss.elastic.co/u/Nathan_F)\
**Post date:** [June 18, 2016, 4:47am UTC](https://discuss.elastic.co/t/scroll-failure-solved/52966/4 "2016-06-18T04:47:48Z")

</div>

It appears that this does work:

```
curl -XGET 'localhost:9200/_search/scroll?scroll=1m' \
  -d 'cXVlcnlBbmRGZXRjaDsxOzI5NzIwMDotanF4VWl2TlFmYUg5TFl5QlNUVHRnOzA7'

```

Thanks for your time.

---

<div class="post-metadata">

**Author:** ![prasad\_kp](https://avatars.discourse-cdn.com/v4/letter/p/dc4da7/32.png) [@prasad\_kp](https://discuss.elastic.co/u/prasad_kp)\
**Post date:** [December 13, 2016, 12:51pm UTC](https://discuss.elastic.co/t/scroll-failure-solved/52966/5 "2016-12-13T12:51:03Z")

</div>

HI Nathan ,

I am facing the similar issue , musing elastic search 1.7

GET /\_search/scroll  
{  
"scroll": "1m",  
"scroll\_id":"cXVlcnlUaGVuRmV0Y2g7NTsyNzQ6SWFtYU9oNUxUaXVYYndlTGt6a2FndzsyNzM6SWFtYU9oNUxUaXVYYndlTGt6a2FndzsyNzE6SWFtYU9oNUxUaXVYYndlTGt6a2FndzsyNzU6SWFtYU9oNUxUaXVYYndlTGt6a2FndzsyNzI6SWFtYU9oNUxUaXVYYndlTGt6a2FndzswOw"  
}

Error:  
{  
"error": "ElasticsearchIllegalArgumentException[Failed to decode scrollId]; nested: IOException[Bad Base64 input character decimal 123 in array position 0]; ",  
"status": 400  
}

Could You please let me how you solved the issue

---

<div class="post-metadata">

**Author:** ![Nathan\_F](https://avatars.discourse-cdn.com/v4/letter/n/b5a626/32.png) [@Nathan\_F](https://discuss.elastic.co/u/Nathan_F)\
**Post date:** [December 14, 2016, 12:33pm UTC](https://discuss.elastic.co/t/scroll-failure-solved/52966/6 "2016-12-14T12:33:46Z")

</div>

Well as I posted before:

curl -XGET 'localhost:9200/\_search/scroll?scroll=1m'   
-d 'cXVlcnlBbmRGZXRjaDsxOzI5NzIwMDotanF4VWl2TlFmYUg5TFl5QlNUVHRnOzA7'

So the get's data is the scroll id and the scroll "1m" value is part of  
the url which is different from what the more current api expects which  
puts both values in the get's data as json. This is what worked in my  
case so hopefully it works for you as well.

Regards,  
Nathan

---

<div class="post-metadata">

**Author:** ![nik9000](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/nik9000/32/44947_2.png) [@nik9000](https://discuss.elastic.co/u/nik9000)\
**Post date:** [December 14, 2016, 2:44pm UTC](https://discuss.elastic.co/t/scroll-failure-solved/52966/7 "2016-12-14T14:44:57Z")

</div>

The [docs](https://www.elastic.co/guide/en/elasticsearch/reference/1.7/search-request-scroll.html) for 1.7 don't mention the json body way of scrolling. I expect it wasn't implemented until later.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 5, 2017, 10:04pm UTC](https://discuss.elastic.co/t/scroll-failure-solved/52966/8 "2017-07-05T22:04:58Z")

</div>


