← Back to team overview

maria-developers team mailing list archive

Re: Proposal to split @@optimizer_switch

 

On Tue, Jun 28, 2011 at 01:20:07AM +0200, Vladislav Vaintroub wrote:
> 
> > -----Original Message-----
> > From: maria-developers-
> > bounces+wlad=montyprogram.com@xxxxxxxxxxxxxxxxxxx [mailto:maria-
> > developers-bounces+wlad=montyprogram.com@xxxxxxxxxxxxxxxxxxx] On
> > Behalf Of Sergey Petrunya
> > Sent: Montag, 27. Juni 2011 15:28
> > To: maria-developers@xxxxxxxxxxxxxxxxxxx
> > Subject: Re: [Maria-developers] Proposal to split @@optimizer_switch
> > 
> > On Fri, Jun 10, 2011 at 12:13:12PM +0400, Sergey Petrunya wrote:
> > > Hello,
> > >
> > > Please find below descriptions of problems with current
> > @@optimizer_switch
> > > variable, as well as a proposal on how to fix it.
> > >
> 
> I would actually prefer more traditional underscore syntax, just for the
> sake of uniform parameter handling.  Whether the dotted notation is better
> readable that underscore one, is mostly matter of  individual taste.
> Besides, I would remove underscore from some already existing underscored
> keyword (this also eliminated differences between semijoin and outer_join
> for example). Stuff like indexconditionpushdown  becomes unreadable, perhaps
> can be "icp", it is referred as ICP everywhere anyway, and there are other
> abbreviations already in place, like mrr and bka. 
> 
> With this proposal , keywords would look like :
> 
> optimizer_indexmerge=on
> optimizer_indexmerge_union=on
> optimizer_indexmerge_sortunion=on
> optimizer_indexmerge_intersection=on
> optimizer_indexmerge_sortintersection=off
> optimizer_icp=on
> optimizer_joincache_bka=on
> optimizer_joincache_hashed=on
> optimizer_joincache_incremental=on
> optimizer_joincache_optimizebuffersize=on
> optimizer_joincache_outerjoin=off
> optimizer_joincache_semijoin=off
> optimizer_mrr=on
> optimizer_mrr_costbased=off
> optimizer_mrr_sortkeys=on
> optimizer_semijoin=on
> optimizer_semijoin_firstmatch=on
> optimizer_semijoin_loosescan=on
> optimizer_subquery_cache=on
> optimizer_subquery_intoexists=on
> optimizer_subquery_materialization=off
> optimizer_subquery_partialmatch_rowidmerge=on
> optimizer_subquery_partialmatch_tablescan=on
> optimizer_tableelimination=on
>

Ok. What syntax should be used to set all optimizer (or optimizer.join_cache) 
settings to their defaults?  Lots of programming languages use xxx.yyy
notation to denote access to member yyy of some composite entity xxx,  so 
when one writes 

  optimizer.join_cache.bka 

it hints that 'optimizer' is an entity that you could operate on as a whole. If
we use 

  optimizer_joincache_bka 

than personally for me it is not clear that 'optimizer' is an entity I could
operate on.


BR
 Sergey
-- 
Sergey Petrunia, Software Developer
Monty Program AB, http://askmonty.org
Blog: http://s.petrunia.net/blog


Follow ups

References