Hi!
On Dec 06, Konstantin Osipov wrote:
> * Sergei Golubchik <serg@stripped> [07/12/06 22:18]:
> > On Dec 04, konstantin@stripped wrote:
> > > ChangeSet@stripped, 2007-12-04 22:32:08+03:00, kostja@bodhi.(none) +1 -0
> > > Fix Bug#25535 "load_defaults() no longer included by mysql.h" by
> > > making sure that load_defaults can be made available by including
> > > my_sys.h. Note, if one includes both my_sys.h and mysql.h, my_sys.h
> > > got to go first (this is how mysql.h is written).
> >
> > I don't like it. my_sys.h and my_global.h always were internal
> > headers, we modify them at will without a second thought. They
> > define lots of types and macros that are used in MySQL sources but
> > make no sense anywhere else (example: my_global.h starts from
> > defining INNODB_COMPATIBILITY_HOOKS). They aren't appropriate to be
> > declared a public client API.
>
> Whether we want it or not, it is our public API and has been for
> years.
>
> We might not advertise it, not document it, not maintain
> compatibility -- we are not and I think should not be doing that,
> but we do ship it.
We ship it, but clients aren't really expected to use it, nor they need
to anyway.
> > Why not to add/move load_defaults() to mysql.h where it was ?
>
> Because mysql.h is a public header that stands for MySQL Client
> Library. load_defaults() is not a part of the public library API,
> rather just one call for defaults handling that was (in the way of
> least resistance) added to it a while ago. There is a number of
> defaults handling declarations that are missing: free_defaults(),
> modify_defaults_file, etc.
It basically is a part of the public library API - it's the only way for
a client to support /etc/my.cnf configuration, which is supposed to be
common to all clients.
Regards / Mit vielen Grüssen,
Sergei
--
__ ___ ___ ____ __
/ |/ /_ __/ __/ __ \/ / Sergei Golubchik <serg@stripped>
/ /|_/ / // /\ \/ /_/ / /__ Principal Software Developer
/_/ /_/\_, /___/\___\_\___/ MySQL GmbH, Dachauer Str. 37, D-80335 München
<___/ Geschäftsführer: Kaj Arnö - HRB
München 162140