Arina Ielchiieva created DRILL-6024:
---------------------------------------

             Summary: Use grace period only in production servers
                 Key: DRILL-6024
                 URL: https://issues.apache.org/jira/browse/DRILL-6024
             Project: Apache Drill
          Issue Type: Improvement
    Affects Versions: 1.12.0
            Reporter: Arina Ielchiieva
             Fix For: 1.13.0


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: 
{quote}
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.
{quote}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to