Eric wrote:
> Hi!
> 
> I've been planning on writing a new client library for a couple months
> now, and recently have finally had time to research and design it. I was
> planning to develop and release this as it's own project, but with the
> news of Drizzle, I thought it would be a more appropriate place for it.
> Some key drivers for this project are:
> 
> 1 - Support for asynchronous I/O. This would not just be for an entire
> connection, but be able to toggle this at different times throughout the
> connection (the socket code will always use ASIO, so it would be a
> simple flag for library behavior).
> 
> 2 - Finer granularity of what to cache in large response (and when to do
> it). Be able to stream at the column or partial-column level (for large
> text/blob). For example, if you are pulling down a large BLOB, you could
> read it in smaller chunks to process or pass through in applications.
> 
> 3 - Improved buffer management over existing library.
> 
> 4 - BSD or LGPL license.
> 
> This will be written in C (no C++ for broader integration) and other
> language bindings can be built on it. I'll probably take some chunks of
> protocol code out of dormando's proxy code (since this is also BSD).
> Initially I'll be focusing on external client use and not internal
> server code use (like for replication), but eventually we could possibly
> work it in there too.

Sounds fine to me. We're also working on extricating the current client
lib into a fully stand alone lib. I would love it if, in general, the
server didn't need anything special to use a client lib (again, for rep
or whatever) but instead could just behave like a normal consumer of the
lib. If the API isn't broad enough, we'll extend the API. (I do not like
special-internal-use-only versions)

> I'd appreciate your thoughts on it being part of drizzle, and any other
> features or design principles to focus on.

I personally have no problem with that... although given that we're
trying to move the current client lib _out_ of the tree, it might be a
decent idea to make a separate tree, but still associate it with the
drizzle project. (if you push to lp:~username/drizzle/my-new-client-lib,
it'll do that)

> Thanks!
> -Eric
> 
> (apologies if you got two messages, my first one was from an email not
> registered with launchpad so it was probably blocked).
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~drizzle-discuss
> Post to     : [email protected]
> Unsubscribe : https://launchpad.net/~drizzle-discuss
> More help   : https://help.launchpad.net/ListHelp
> 


_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to