XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 1.12.0
    • None
    • None
    • None

    Description

      DRILL-4286 introduces graceful shutdown. Currently by default it is turned out (grace period is set to 0) since if we turn it out by default it affects non-productions systems, for example, unit tests time run increased x3 times.
      Paul.Rogers proposed the following solution:

      In a production system, we do want the grace period; it is an essential part of the graceful shutdown procedure.

      However, if we are doing a non-graceful shutdown, the grace is unneeded.

      Also, if the cluster contains only one node (as in most unit tests), there is nothing to wait for, so the grace period is not needed. The same is true in an embedded Drillbit for Sqlline.

      So, can we provide a solution that handles these cases rather than simply turning off the grace period always?

      If using the local cluster coordinator, say, then no grace is needed. If using ZK, but there is only one Drillbit, no grace is needed. (There is a race condition, but may be OK.)

      Or, if we detect we are embedded, no grace period.

      Then, also, if we are doing a graceful shutdown, we need the grace. But, if we are doing a "classic" shutdown, no grace is needed.

      The result should be that the grace period is used only in production servers, only when doing a graceful shutdown.

      Attachments

        Activity

          People

            vdonapati Venkata Jyothsna Donapati
            arina Arina Ielchiieva
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: