DB Backend (was Re: GnuCash-2.0 first impressions)
Derek Atkins
warlord at MIT.EDU
Fri Jan 20 11:28:15 EST 2006
Ganesan Rajagopal <rganesan at users.sourceforge.net> writes:
>> OK. The embedded code will still come in handy in certain areas.
>
> Sorry if I am a bit dense today, what's this "embedded code"?
Embedded QOF.. Has nothing to do with GnuCash. (Note: Whenever
reading Neil's email, think "QOF" first).
>>> But yes, I would certainly encourage you to come up with a good
>>> extensible design for a SQL backend and, once you get the design done
>>> (and signed off on -devel) go ahead and start working on it.
>
> Would the existing PostgreSQL backend be a good place to start? The GnuCash
> Wiki talks about a Direct SQLite backend and a extensible backend. Do we
> need both? I saw some discussions in the gnucash-devel archives about libdbi
> and GNOME's libgda. I didn't see the discussion conclude in favor of either
> one. Conceptually I find libdbi much simpler.
I wouldn't call it a "GOOD" place to start -- it's far from an
extensible implementation. But it would at least give you a small
glimpse of what you need to do.
By "extensible" I mean "able to extend to new GnuCash functionality
over time".. Not necessarily "able to work on multiple DB Backends".
As for "native SQLite" vs. "dbi or gda", I don't have a strong
opinion.. Just so long as you handle multiple users against the same
database and handle change-notification (which is effectively a poll
against the DB that tells the client "yes, something changed").
>From a UI standpoint I want the SQLite backend to look like a single
"file".. So that means that the gnc-backend-file.c knows about SQLite
enough that it can jump into the SQLIte backend if it notices that an
open file is a SQLite file. But I don't think you really need to
worry about that.
> Ganesan
-derek
--
Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
Member, MIT Student Information Processing Board (SIPB)
URL: http://web.mit.edu/warlord/ PP-ASEL-IA N1NWH
warlord at MIT.EDU PGP key available
More information about the gnucash-devel
mailing list