Eric DayThoughts, code, and other oddments. |
Dark | Light |
|
|
|
< The Future of Databases || Database I/O and Schedulers > libdrizzle 0.2.0 now in DrizzleMarch 31st, 2009I’ve spent the past couple weeks ripping out the old client library (based on libmysql) from the Drizzle client utilities (drizzle, drizzledump, drizzleadmin, …). I’ve replaced it with new code that uses the new libdrizzle. Brian merged this patch into the trunk yesterday, so we are one step closer to being rid of the old library! It is still used internally within the server, so my next task is ripping it out from there. This means that the old library is no longer installed, so all new client and application development needs to use the new libdrizzle. It also means libdrizzle is now required to be able to build Drizzle. While I’ve done my best to convert the old utilities, I’m sure I’ve missed a few things. Please report any bugs you find with them. As part of this, there are new releases of libdrizzle and the Drizzle PHP extension! Both were updated with fixes and new functionality required for the conversion. Remember that libdrizzle and the PHP extension provide concurrent queries, improved buffering, and can talk to both Drizzle and MySQL, so new applications can use it to provide the most options for the future. If you want to know more, I’ll be talking about libdrizzle at the upcoming MySQL User Conference and Drizzle developer day. <rant> Now, a few comments about the client utility code, and some things that bothered me. This applies to both Drizzle and MySQL since they are (well, were) largely the same code base minus a few renames. I found at least five different error reporting mechanism that pretty much did the same thing, one tool even had three! It would have been wise to consolidate this into a common error reporting module that all utilities could have used. The same applies for query wrappers. Code reuse is good! Next, there were a few comments like this: /* We have to execute differently based on query type. This should become a function. */ This is not useful, will this magically become a function on it’s own? No. Don’t be lazy, fix it now! drizzletest (or mysqltest): The mention alone is sufficient as a rant. This was fragile. In all honesty, it provides a fairly robust testing language, but the way in which it was implemented could have been better (seems to have a lot of implicit state and “magic”). This type of thing is probably better suited for a scripting language, which is why Drizzle is looking at a new Python or Perl framework. </rant> Posted in Drizzle, Main, MySQLOne Response to "libdrizzle 0.2.0 now in Drizzle"Leave a Reply< The Future of Databases || Database I/O and Schedulers > |
Blog Wiki About Resume RSS Comments Launchpad identi.ca OpenStack Scale Stack Gearman NW Veg Veg Food & Fit |
|
Copyright (C) Eric Day - eday@oddments.org All content licensed under the Creative Commons Attribution 3.0 License. Hosted by Rackspace Cloud |
|
[...] it’s going. I saw in today’s planet.mysql.com by Eric Day a new dependency is needed. libdrizzle 0.2.0 now in Drizzle is now required, so I started [...]