Jeff Hobbs wrote:
Greg Wolff wrote:
Why do we need a MetaKit db driver?
Eh, who said anything about needing one? It would be nice to have
a db driver for metakit though.
Not really, since db drivers are SQL based and MetaKit isn't. If someone
wants an embedded database, then SQLite would be much better, and I'm
working on nssqlite at the moment (including Tcl function support).
The hardest part is working around SQLITE_SCHEMA error, which occurs on
almost every database schema change done by any other thread/process.
This requires either doing double Ns_StrDup+Ns_Free calls or messing
inside Ns_Set structures...
With double strdup, speed of usual operations is similar to mySQL 3.23.
And using Ns_Set internals speeds the driver up at about 5-10%,
depending on result size. I've tested it on from 10 to 100k entries
(which isn't too much for a db, but many web applications do not require
more :-).
The AOLserver would clearly need the VFS for adp and tcl files.
But if the database application were something like
BerkeleyDB, which is thread safe and 2-phase-commit etc.,
then why use MetaKit as the *application* database?
And who said we would? Metakit is a requirement for starpacks in
general at this time, so you would need it one way or the other.
Since it is already there, you could use it for other stuff.
I'd actually advice considering SQLite for small and medium application
database, especially if it is currently using mySQL. Despite the name
and size, it has some quite powerful features - triggers, foreign keys
and references, ability to run Tcl commands and many other things.
The main disadvantage for many is that it is typeless - this is a PITA
when working with DATE/TIME/DATETIME fields.
--
WK
--
AOLserver - http://www.aolserver.com/
To Remove yourself from this list, simply send an email to <[EMAIL PROTECTED]> with the
body of "SIGNOFF AOLSERVER" in the email message. You can leave the Subject: field of
your email blank.