Jim Starkey wrote:
> Jay Pipes wrote:
>> Jim Starkey wrote:

[snip]

> Necessary?  It isn't.  Nothing is necessary.  A database can be a simple
> store/fetch with no added value.  It's faster, of course, is databases
> can do selective retrievals, which requires comparisons.  And it's
> useful if database systems can differentiate between string, numbers,
> and dates so it can do useful comparisons.  And it's useful if database
> systems do joins to eliminate the number of round trips to get required
> data.  It's also useful for databases to do arithmetic so they can
> handle more complicated queries, and so on and so forth.
> 
> The point is that all of this complication is useful:  It allows the
> database system to do, the client to do less, the amount of data
> transfered and the number of round trips to go down.

[snip]

> I don't expect anyone to agree with me, but I
> believe that a strong architecture that supports encapsulated extension
> is a better way to do things.  In specific, I think that supporting
> loadable C or C++ is a terrible idea.  I went there in the 1980's with
> Interbase and regretted it.  Even if you have decent APIs (and drizzle
> doesn't), there is still the security/reliability problem of loading
> untrustworthy code.  These issues have been dealt with in languages like
> Java, but are unsolveable in C and C++.

C/C++ APIs is a base for building systems to support whatever language you
choose. Ideally, it should be possible to build the system to support extensions
written in Java, Lua, Clean, SELF, Forth, whatever; but to do that, it is
essential to have a working C/C++ API into the server.

The API need to be there anyway, for pure engineering reasons, so it is just
decent to put a little extra effort into ensuring it is stable and documented
and let anybody extend it with modules of their liking. If you feel like adding
a Java loader module, feel free to do it (actually, I would encourage and
support it, for the reasons you mention), but to do that, a C/C++ interface is
needed, so it might just as well be an API proper.

> I think drizzle would be way ahead of the curve if it support a
> theoretically defensible way to permit encapsulated extensions of user
> semantics than by either supporting hundreds and hundreds of special
> case hacks or allowing j-random code to run loose in what would
> otherwise be a trusted server.

That is actually a decision that the DBA should make, not Drizzle. Drizzle
should just provide the tools to do what is necessary.

Just my few cents,
Mats Kindahl
-- 
Mats Kindahl
Lead Software Developer
Replication Team
MySQL AB, www.mysql.com
begin:vcard
fn:Mats Kindahl
n:Kindahl;Mats
org:Sun Microsystems
adr;quoted-printable:;;Tegv=C3=A4gen 3;Storvreta;SE;74334;Sweden
email;internet:[EMAIL PROTECTED]
title:Lead Replication Software Developer
x-mozilla-html:FALSE
version:2.1
end:vcard

_______________________________________________
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