Uploaded image for project: 'Apache Drill'
  1. Apache Drill
  2. DRILL-5006

Drill web UI hangs if execute a query with a large result set

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 1.8.0
    • None
    • None
    • None

    Description

      Using a pipe-separated file 388 MB in size, do a SELECT * on the file (also added an ORDER BY). This produces a huge result set. Do this query in the web UI. A number of things happen:

      • Using top, we see that Drill grinds on the query for a while, as expected.
      • Top shows Drill to stop consuming CPU. The web UI does nothing during this time. This time lasts several minutes.
      • Drill eventually shows the first 30 rows of the query.
      • The browser "spins" forever waiting for the server to finish sending data.
      • The Safari browser enters the "spinning beachball" state on that page because of memory use, waiting for data, etc.

      Actually, it seems that the server is busily returning zillions of empty lines in the HTML. Scrolling down past the first 30 rows shows miles of empty white space.

      Fetching of data seems to never complete, even after many minutes.

      It is known that the web UI is limited. But, it should not be possible to overwhelm it with an errant query. Possible solutions:

      1. Spill large results to disk, then page them in the display. Discard them after the web session ends, after some amount of time, etc. (This is that long-term, but hard solution.)
      2. Read the first 30 (or whatever results) and display them. Read and discard all other results to keep the browser (or web server or whatever is hanging) from becoming overloaded.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              paul-rogers Paul Rogers
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated: