MySQL Lists are EOL. Please join:

List:Commits« Previous MessageNext Message »
From:Konstantin Osipov Date:December 6 2007 7:32pm
Subject:Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535
View as plain text  
* 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.

This request is coming from a tool developer -- most of which, AFAIU,
are our own employees. So the change is just to make their life a
bit easier.

If you would like a "cleaner" change, what I can do and will do
with pleasure, is:

 * move everything from my_sys.h to mysys_priv.h (new header)
 * leave only select public declarations in my_sys.h.

But unless we make a serious clean up effort, my_sys.h will still
have to include my_global.h -- my_global.h defines
types, defines, etc. that are used in declaration anything a trifle more
serious than load_defaults.

> 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. I believe we should
not let the mess of my_sys, which does not and will not any time
soon have strict versioning and backward compatibility, overflow
into mysql.h, which does possess these qualities.

-- 
-- Konstantin Osipov              Software Developer, Moscow, Russia
-- MySQL AB, www.mysql.com   The best DATABASE COMPANY in the GALAXY
Thread
bk commit into 5.1 tree (kostja:1.2614) BUG#25535konstantin4 Dec
  • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Sergei Golubchik6 Dec
    • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Konstantin Osipov6 Dec
      • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Sergei Golubchik7 Dec
        • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Konstantin Osipov7 Dec
          • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Paul DuBois7 Dec
            • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Konstantin Osipov7 Dec
          • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Sergei Golubchik7 Dec
            • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Konstantin Osipov7 Dec
              • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Sergei Golubchik7 Dec
                • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Konstantin Osipov7 Dec
                  • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Sergei Golubchik11 Dec
                • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Konstantin Osipov7 Dec
                  • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Sergei Golubchik11 Dec
                    • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Paul DuBois11 Dec
                • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Konstantin Osipov8 Dec
                  • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Paul DuBois8 Dec
                    • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Konstantin Osipov8 Dec
                    • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Sergei Golubchik11 Dec
                      • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Konstantin Osipov11 Dec
                        • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Sergei Golubchik11 Dec
                        • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Paul DuBois5 Feb
                      • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Paul DuBois11 Dec
                        • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Paul DuBois11 Dec
                          • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Sergei Golubchik11 Dec
                            • Re: bk commit into 5.1 tree (kostja:1.2614) BUG#25535Paul DuBois11 Dec