[ 
https://issues.apache.org/jira/browse/DRILL-4286?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16267588#comment-16267588
 ] 

ASF GitHub Bot commented on DRILL-4286:
---------------------------------------

Github user paul-rogers commented on the issue:

    https://github.com/apache/drill/pull/921
  
    Interesting issue! Let's think about this a bit.
    
    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.
    
    There are probably some details to simplify, but I hope the above 
communicates the idea. Can we make this work?


> Have an ability to put server in quiescent mode of operation
> ------------------------------------------------------------
>
>                 Key: DRILL-4286
>                 URL: https://issues.apache.org/jira/browse/DRILL-4286
>             Project: Apache Drill
>          Issue Type: New Feature
>          Components: Execution - Flow
>    Affects Versions: 1.11.0
>            Reporter: Victoria Markman
>            Assignee: Venkata Jyothsna Donapati
>              Labels: doc-impacting, ready-to-commit
>             Fix For: 1.12.0
>
>         Attachments: consoleText.txt, consoleText_after.txt, 
> consoleText_before.txt
>
>
> I think drill will benefit from mode of operation that is called "quiescent" 
> in some databases. 
> From IBM Informix server documentation:
> {code}
> Change gracefully from online to quiescent mode
> Take the database server gracefully from online mode to quiescent mode to 
> restrict access to the database server without interrupting current 
> processing. After you perform this task, the database server sets a flag that 
> prevents new sessions from gaining access to the database server. The current 
> sessions are allowed to finish processing. After you initiate the mode 
> change, it cannot be canceled. During the mode change from online to 
> quiescent, the database server is considered to be in Shutdown mode.
> {code}
> This is different from shutdown, when processes are terminated. 



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

Reply via email to