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

When a query fails, Foreman should wait for all fragments to finish cleaning up before sending a FAILED state to the client

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • Future
    • None
    • None

    Description

      TestDrillbitResilience.foreman_runTryEnd() exposes this problem intermittently

      The query fails and the Foreman reports the failure to the client which removes the results listener associated to the failed query.
      Sometimes, a data batch reaches the client after the FAILED state already arrived, the client doesn't handle this properly and the corresponding buffer is never released.

      Making the Foreman wait for all fragments to finish before sending the final state should help avoid such scenarios.

      Attachments

        1. DRILL-3167.1.patch.txt
          19 kB
          Abdel Hakim Deneche
        2. DRILL-3167.5.patch.txt
          25 kB
          Abdel Hakim Deneche

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            vitalii Vitalii Diravka
            adeneche Abdel Hakim Deneche
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment