-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Tue, 11 Apr 2006, Lalo Martins wrote:

On Mon, 10 Apr 2006 12:24:47 +0100, Neil Mosafi wrote:
Surely the best approach is trying to support as many different database
servers as possible, rather than pushing a single one onto the VOS user?

To that extent, does anyone know of a flexible C++ data access library which
can be configured to talk to many different databases?

Heh.  You read my mind.  I was thinking of this one:
http://dbstep.sourceforge.net/

It runs for me, but I'm afraid it might be a bit unmaintained
(last release was in 2004).

If it's not being maintained, perhaps we could fork our own version and import it into the VOS codebase. That would save some work.

The current VOS SQL persistance uses bog-standard SELECT, INSERT and UPDATE statements. Anything SQL, son-of-SQL, grandfather-of-SQL, brushed-shoulders-with-SQL-on-the-subway, etc should support it.

Oh, while we're on the topic, a few things.

a) The SQLpersist layer is pretty fast because database writes happen in a separate thread from everything else. So the writes are just pushed into a task queue and don't slow down the main part of processing the write request.

b) There is no discrimination between properties, so data like position properties which might be updated ten times a second will be pushed to the database every time it is changed. It may be desirable to have some way of throttling that to avoid too much database traffic.

c) I'm interested in ways of recording change history so that previous states can be recovered. There is an experimental revision control plugin which has in fact been running as the backend for the hypervos section of interreality.org for a couple of years, but it is slow (it uses RCS as a backend for property data, and a history log file for vobject structure data) and the required tools to fetch manipulate the repository were never really developed. Something to think about would be a versioned SQL backend, which added a "version" column and only did inserts, keeping around old rows...

[   Peter Amstutz   ][ [EMAIL PROTECTED] ][ [EMAIL PROTECTED]  ]
[Lead Programmer][Interreality Project][Virtual Reality for the Internet]
[ VOS: Next Generation Internet Communication][ http://interreality.org ]
[ http://interreality.org/~tetron ][ pgpkey:  pgpkeys.mit.edu  18C21DF7 ]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFEQ+EPaeHUyhjCHfcRAm3HAJ4lbzzFvzeQMn5+QOy16QXltVfWogCdEsU8
mH6K7czWMhKQSZTZ3PyYtc0=
=ZGPw
-----END PGP SIGNATURE-----


_______________________________________________
vos-d mailing list
vos-d@interreality.org
http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d

Reply via email to