Dan,

The journal file contains the "before" image of a modified database block not 
the after image.

during write operations: before images are written to the journal file for 
recovery.
   Then the actual change is written to the .db file. 

A commit is an atomic operation due to unlinking the journal file. 

During recovery the journal file is played onto its corresponding .db file. 
This has the affect of a ROLLBACK command return the .db to a consistent state.

So using the journal file to allow reads to continue is the correct place, 
given the current design of sqlite journalling and transactions.


Dan Petitt <[EMAIL PROTECTED]> wrote: The journal file sounds like the wrong 
place to put it, the journal seems to
be the place to store information that needs writing to the database on
completion; storing some read-only information in the same file seems at
odds with its current purpose.

Perhaps a separate file(s) might be more appropriate to store this
information, this might resolve your file format issues but also improve
(but not eliminate) any performance considerations; perhaps the information
could even (optionally) be stored in memory to greatly improve things.

Dan



-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
Sent: 30 October 2007 17:15
To: [email protected]
Subject: Re: [sqlite] Your Concurrency Idea

"Dan Petitt"  wrote:
> Richard, i noticed this ticket in the system:
> http://www.sqlite.org/cvstrac/tktview?tn=2417,8
> 
> And wondered if its something that is getting any serious thought or 
> something that is just a faint possibility?
> 

Seems to be an incompatibly file format change, which more or less rules it
out for any consideration.  Also unaddressed in the proposal is how to
locate a particular page within the journal file without having to do
(performance killing) sequential scan of the possible very large file.

--
D. Richard Hipp 


----------------------------------------------------------------------------
-
To unsubscribe, send email to [EMAIL PROTECTED]
----------------------------------------------------------------------------
-





-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------


Reply via email to