MDB 2.0

From: Date: Fri, 27 Jun 2003 15:04:04 +0000
Subject: MDB 2.0
Groups: php.pear.dev 
Request: Send a blank email to pear-dev+get-17793@lists.php.net to get a copy of this message
Hi, as some of you may have noticed I have started to commit to a new branch of MDB which will become MDB 2.0. The main goals of MDB 2.0 are as follows: 1) improve the API 2) improve performance for users that don't need all the features of MDB 3) make writing drivers easier Especially for 1) I welcome user comments. Just as a general heads up here are some comments: - the core class will be much much slimmer than before as the following things will be removed from the core class: datatype conversion, management methods, high level methods (like get*). This will make the class easier to maintain and understand for users and developers. It will also improve performance and memory consumption for users that don't need all those features. In turn it will do the reverse for users that need all the features almost in every instance call (like myself). - the cell based fetching methods will be removed (unless they are needed for emulating the bulk fetching methods) - I will also look at some of the issues that users have been having with the fetch* methods for example - I will try to simplify the LOB support (I think I didn't do a very good job merging in this feature from Metabase) - the management methods will remain accessable through their own class (as would actually be possible today already), except for the method used for reverse engineering xml schema files (those method will be moved to the new manager package) - the datatype conversion will be moved to a new class, the methods will still be accessible through the core class (for example via MDB_Common::getValue('text', $value)) - the high level methods will be moved to a separate class (any ideas for a name .. MDB_Highlevel sounds pretty crappy) - all the new classes will be loadable (but not on demand, except for the datatype conversion class) through the core class, so it will simply result in a bit more verbose calls ($mdb->createSequence() will become $mdb->management->createSequence()) - the manager class will be removed from the package and will become a new standalone class. I have mailed a separate proposal about this class which apparently will be called DB_Schema - the metabase wrapper will now emulate the direct object API not the functional interface. However I am not sure if I will move the cell based fetching methods here, so maybe the wrapper will not be feature complete (obviously someone else could add them). I am not quite sure what this means for MetaStorage compatibility I am sure I forgot things. But there is still a bit of time until MDB 2.0 will be released. I think 1-2 months is a good estimate. The result of the LinutxTag DB extension maintainer meeting might affect this schedule. Regards, Lukas Smith smith@backendmedia.com _______________________________ BackendMedia www.backendmedia.com berlin@backendmedia.com Linn Zwoch Smith GbR Pariser Str. 44 D-10707 Berlin Tel +49 30 83 22 50 00 Fax +49 30 83 22 50 07

« previous php.pear.dev (#17793) next »