List:Commits« Previous MessageNext Message »
From:Konstantin Osipov Date:July 31 2007 6:51am
Subject:Re: bk commit into 5.1 tree (monty:1.2555)
View as plain text  
* monty@stripped <monty@stripped> [07/07/30 07:32]:
> ChangeSet@stripped, 2007-07-30 06:22:25+03:00, monty@stripped +3 -0
>   Add 'extension' field to all client library structures to make them extensible
>   Reorder structure elements to make structures smaller and faster on 64 bit systems
>   This is a first step in cleaning up the client include files (but should be enough
> to allow us to do future fixes without breaking the library)
>   This change is part of WL#2872,  Make client library extensible.

Hello Monty,

I think this solution inadequate, it will be difficult to
maintain.

E.g. if we want to re-structure the client
implementation in future -- by moving out common members, or,
say, merging common parts of MYSQL_STMT and MYSQL, we won't be
able to do that without breaking the ABI again.

I believe we should pay the price and replace all structures with
opaque pointers. 

>  enum mysql_option 
> @@ -211,6 +213,7 @@ struct st_mysql_options {
>    void (*local_infile_end)(void *);
>    int (*local_infile_error)(void *, char *, unsigned int);
>    void *local_infile_userdata;
> +  void *extension;
>  };

-- 
-- 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 (monty:1.2555)monty30 Jul
  • Re: bk commit into 5.1 tree (monty:1.2555)Konstantin Osipov31 Jul