sqlite file format, anyone?

Linas Vepstas linas at linas.org
Mon Jun 23 14:09:29 CDT 2003


On Mon, Jun 23, 2003 at 01:42:02PM -0400, Derek Atkins was heard to remark:
> linas at linas.org (Linas Vepstas) writes:
> 
> > On Sun, Jun 22, 2003 at 10:21:11PM -0400, Derek Atkins was heard to remark:
> > > Matthew Vanecek <mevanecek at yahoo.com> writes:
> > > 
> > > > > Except it's not very real-time (the client has to emit a query
> > > > > to notice the event), and it's not very portable (it requires
> > > > > pg).
> > 
> > There is no requirement for 'real time'.  If you are casually using
> > gnucash, sooner or later you'll hit the sql db and get the event.
> > If you want to watch exactly what the other person is typing, then you
> > should use VNC not gnucash.
> 
> Well, by real-time I meant something like: user A has a register open,
> user B changes the name of an account, user A should get a
> notification of the change before they actually need to perform a
> query.

Wouldn't it be the case that if user A opened a register, genrated a
report, etc. they would get a gncQuery to run, which would go to the
backend, which would cause any pending events to flush?   If this is
really important, we could add a 'flush events' call to the backend, and
then add a callback to gtk_main_loop that would run every minute.

Lat time I tested the multi-user funcs, things worked pretty well I
thought.  Any 'reasonable' scanario seemd to work fine.

> > > Ok, this implies we cannot do multi-user on MySQL 
> > 
> > You can't do multi-user with MySQL because of the problems with locking,
> > and because I'm pretty sure that 'real' multi-user installations will
> > need the balance checkpointing which needs stored proceedures.  You can
> > probably work around the events issue by sticking them in a table, and
> > polling that table.
> 
> I am still not coninvinced there is any locking problem here.  Also,

Can you nest table locks in mysql?  I thought you couldn't.  Can you
rollback? i.e. start to make changes and then decide to skip it?

> as I mentioned earlier the balance checkpointing should be changed to
> tie into Periods and we should scrap the stored procedures completely
> on all platforms.  The current checkpointing is inherently flawed,
> IMHO.

What's flawed with it?

You don't need checkpointing for small systems, but if you've go an 
account with  tens of thousands of transactions, or more, in it, I think
you need it. 

> Speaking of which -- how goes the Lot interface and Periods?  Any
> progress?

No progress. I think about it every now and then ... I really need to
get some features into gnotime, that's where I've been working. 

--linas

-- 
pub  1024D/01045933 2001-02-01 Linas Vepstas (Labas!) <linas at linas.org>
PGP Key fingerprint = 8305 2521 6000 0B5E 8984  3F54 64A9 9A82 0104 5933


More information about the gnucash-devel mailing list