Skip to content

scroll-seq requires help when working with a "scan" search type. #72

Description

@tedgin

I'm using elasticsearch 0.90.7, so this may be a temporary problem.

A scroll search with a scan search type does not return results with the initial call. A call to the _search/scroll endpoint needs to be made to retrieve the first set of results. This isn't consistent with the behavior of the other search types.

The otherwise very useful scroll-seq endpoint doesn't know about this behavioral inconsistency. When naively called like the following, it assumes the lack of matches returned in the initial search call means there are no matches. scroll-seq returns an empty list.

(scroll-seq (search "index" "mapping" :query (match-all) :search_type "scan"))

There is a work around, make a single scroll call and pass that result set to scroll-sea, but it would be neat if scroll-seq could hide the need to do that for scan search types.

Activity

  1. lorthos commented on Mar 3, 2014

    @lorthos
    Contributor

    Thanks for the heads up, i was dealing with this earlier today..

  2. emidln commented on Oct 1, 2014

    @emidln
  3. michaelklishin commented on Oct 1, 2014

    @michaelklishin
    Member

    @emidln if there are no hits, should we continue scrolling?

  4. emidln commented on Oct 1, 2014

    @emidln

    Yes. This is due to ES's scroll/scan api being a special case. The first call returns no hits. We probably could do something along the lines of a multi-arity function where the lower arity calls the higher arity with true on the first call and then the lazy-seq calls the function with false and modify the seq check as appropriate.

  5. michaelklishin commented on Oct 2, 2014

    @michaelklishin
    Member

    @emidln feel free to submit a pull request :)

  6. emidln commented on Mar 25, 2015

    @emidln

    I haven't had time to build up a full pull request, but for anyone who is affected, this gist provides a solution and a higher-level scan/scroll interface: https://gist.github.com/54e3e66715f38befa6da

  7. added a commit that references this issue on Jul 3, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions