Hi!

On Fri, Nov 13, 2009 at 10:17:13AM -0500, Jay Pipes wrote:
> >1) How do you feel about Python as a language choice? Would Python be a
> >good language to code a Drizzle client in?
> 
> Yes, and no. :) I'm a huge Python fan.

Same here, I support Python as the language choice.

> That said, it has a serious problem with its global interpreter lock
> for threading.  If the design of this new client is to allow a user
> to take advantage of the non-blocking async IO libdrizzle API, this
> could be a problem for Python.

You don't need to worry about threads aith non-blocking I/O. That's
actually one of the main reasons to use non-blocking I/O, so you
don't need one thread/connection. :)  This means you need to store
a little more state if you have multiple non-blocking connections,
but all very doable.

> >2) Would you be unable to use a client written in Python 3? What is the
> >oldest version of Python we should support?
> 
> I would advise against it b/c of Monty's mentioned issues regarding
> availability on platforms as well as the fact that there aren't many
> modules ported to Python 3 at this time.  Python 2.5+ or even 2.6+
> is a safer bet.

Same here. I would love to be more forward facing and use Python 3,
but it's just not quite there yet with the distros.

> >3) How important a factor is performance in our language choice and
> >design of the client?
> 
> Well, this will depend on who is using the client and for what
> purposes.  It also depends on whether the view of the community is
> that the client should focus on functionality, ease of use and
> portablity over performance, and that performance-intensive tasks
> like parallel bulk loading should be written as separate client
> tools (in, say, C++).

Yeah, we can develope separate tools for bulk loading based on
the replication API if needed. With Python we also have the option
or writing a module in C/C++ and loading that in instead too for
performance gains (like what bzr has done with some parts).

-Eric

_______________________________________________
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