Re: TODO : Allow parallel cores to be used by vacuumdb [ WIP ] - Mailing list pgsql-hackers
From | Dilip kumar |
---|---|
Subject | Re: TODO : Allow parallel cores to be used by vacuumdb [ WIP ] |
Date | |
Msg-id | 4205E661176A124FAF891E0A6BA9135266368EB1@szxeml509-mbs.china.huawei.com Whole thread Raw |
In response to | Re: TODO : Allow parallel cores to be used by vacuumdb [ WIP ] (Amit Kapila <amit.kapila16@gmail.com>) |
Responses |
Re: TODO : Allow parallel cores to be used by vacuumdb [
WIP ]
|
List | pgsql-hackers |
<div class="WordSection1"><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black">On</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"></span><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">28October 2014 09:18, Amit Kapila Wrote,</span><p class="MsoNormal"><spanstyle="font-size:10.0pt;font-family:"Tahoma","sans-serif""> </span><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black">>Iam worried about the case if after setting theinAbort flag,</span><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black">>PQCancel()fails (returns error).</span><p class="MsoNormal"><spanstyle="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black">> </span><p class="MsoNormal"><spanstyle="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black">>> If select(maxFd +1, workerset, NULL, NULL, &tv); come out, we can know whether it came out because of cancel query and handle it accordingly.</span><pclass="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black">>> </span><pclass="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black">> </span><pclass="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black">>Yeah,it is fine for the case when PQCancel()is successful, what</span><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black">>ifit fails?</span><p class="MsoNormal"><spanstyle="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black">>I think even if selectcomes out due to any other reason, it will behave</span><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black">>asif it came out due to Cancel, even though actuallyCancel is failed,</span><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black">>howare planning to handle that case?</span><pclass="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black"> </span><pclass="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black">Ithink If PQcancel fails then also there is no problem,because we are setting inAbort flag in handle_sigint handler, it means user have tried to terminate.</span><p class="MsoNormal"><spanstyle="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black"> </span><p class="MsoNormal"><spanstyle="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black">So in this case as well wewill find that <b>inAbort </b>is set so we return error, and in error case we finally call <b>DisconnectDatabase</b>, andin this function we will send the <b>PQcancel</b> for all active connection and then only we disconnect.</span><p class="MsoNormal"><spanstyle="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black"> </span><p class="MsoNormal"><spanstyle="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black">Regards,</span><p class="MsoNormal"><spanstyle="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black">DIlip</span></div>
pgsql-hackers by date: