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 4205E661176A124FAF891E0A6BA9135266398365@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 ]  (Amit Kapila <amit.kapila16@gmail.com>)
List pgsql-hackers
<div class="WordSection1"><p class="MsoNormal"><span
style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">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"">19December 2014 16:41, Amit Kapila Wrote,</span><p
class="MsoNormal"><spanstyle="font-size:10.0pt;font-family:"Tahoma","sans-serif""> </span><p class="MsoNormal">>One
ideais to send all the stages and corresponding Analyze commands<p class="MsoNormal">>to server in one go which
meanssomething like<p class="MsoNormal">>"BEGIN; SET default_statistics_target=1; SET vacuum_cost_delay=0;<p
class="MsoNormal">> Analyze t1; COMMIT;" <p class="MsoNormal">>"BEGIN; SET default_statistics_target=10; RESET
vacuum_cost_delay;<pclass="MsoNormal">>  Analyze t1; COMMIT;"<p class="MsoNormal">>"BEGIN; RESET
default_statistics_target;<pclass="MsoNormal">> Analyze t1; COMMIT;"<p class="MsoNormal"> <p
class="MsoNormal">Case1:<u>InCase for CompleteDB:</u><p class="MsoNormal"> <p class="MsoNormal">In base code first it
willprocess all the tables in stage 1 then in stage2 and so on, so that at some time all the tables are analyzed at
leastup to certain stage.<p class="MsoNormal"> <p class="MsoNormal">But If we process all the stages for one table
first,and then take the other table for processing the stage 1, then it may happen that for some table all the stages
areprocessed, <p class="MsoNormal">but others are waiting for even first stage to be processed, this will affect the
functionalityfor analyze-in-stages.<p class="MsoNormal"> <p class="MsoNormal"><u>Case2: In case for independent tables
like–t “t1” –t “t2”</u><p class="MsoNormal"> <p class="MsoNormal">In base code also currently we are processing all the
stagesfor first table and processing same for next table and so on.<p class="MsoNormal"> <p class="MsoNormal">I think,
ifuser is giving multiple tables together then his purpose might be to analyze those tables together stage by stage, <p
class="MsoNormal">butin our code we analyze table1 in all stages and then only considering the next table.<p
class="MsoNormal"> <pclass="MsoNormal">So for tables also it should be like<p class="MsoNormal">Stage1:<p
class="MsoNormal">           T1<p class="MsoNormal">            T2<p class="MsoNormal">            ..<p
class="MsoNormal">Stage2:<pclass="MsoNormal">            T1<p class="MsoNormal">            T2<p class="MsoNormal">…<p
class="MsoNormal"> <pclass="MsoNormal">Thoughts?<p class="MsoNormal"> <p class="MsoNormal">>Now, still parallel
operationsin other backends could lead to<p class="MsoNormal">>page misses, but I think the impact will be
minimized.<pclass="MsoNormal"> <p class="MsoNormal">Regards,<p class="MsoNormal">Dilip<p class="MsoNormal"> <p
class="MsoNormal"> <pclass="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"> </span><pclass="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"> </span><pclass="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"> </span></div>

pgsql-hackers by date:

Previous
From: Andres Freund
Date:
Subject: Re: hash_create API changes (was Re: speedup tidbitmap patch: hash BlockNumber)
Next
From: Andres Freund
Date:
Subject: Re: replicating DROP commands across servers