On Mon, 19 Sep 2005, Iulian Popescu wrote:

>Thank you very much for the answer and I apologize for my misconception. My
>confusion came from the fact the database handle was used by two different
>threads and one of them was executing operations inside a transaction.
>Is that possible to obtain more than one handle to the same in memory
>instance of the database?


I believe not. The memory database will be local to the sqlite handle.

You could, however, open a file based database on a memory FS, like tmpfs
on Linux or Solaris. This is a RAM based FS, backed by swap, and so is
almost like a memory only database, and files created are shareble.


>
>Thank you,
>
>Iulian.
>
>-----Original Message-----
>From: D. Richard Hipp [mailto:[EMAIL PROTECTED]
>Sent: Monday, September 19, 2005 1:44 PM
>To: sqlite-users@sqlite.org
>Subject: Re: [sqlite] Multiple Threads and Transactions
>
>On Mon, 2005-09-19 at 13:27 -0400, Iulian Popescu wrote:
>> Hello,
>>
>>
>>
>> I'm kind of new to the SQLite. I'm running an instance of the database in
>> memory. I'm trying to figure out if the transaction isolation is also
>valid
>> between threads. To give a concrete example, two threads as part of the
>same
>> process share the same database connection. Suppose a transaction is
>started
>> in one thread and inserts some rows in a table A. If the same thread does
>a
>> SELECT * FROM A it should see the inserted records if my understanding is
>> correct. What will happen if another thread does a SELECT from the same
>> table A before the first thread commits the transaction? Will it see the
>> records inserted by the first thread? Based on the tests I have made it
>> seems to - weather I expected not. Is that correct or am I doing something
>> wrong?
>>
>> I've noticed if I do the same thing with a database on disk and between
>> processes, the second process won't see the changes until the first one
>will
>> commit the transaction.
>>
>
>Isolation only occurs between separate database handles.  If
>you do two statements against the same database handle, they
>will not be isolated.  I do not understand why you would expect
>that they would be.
>

-- 
    /"\
    \ /    ASCII RIBBON CAMPAIGN - AGAINST HTML MAIL
     X                           - AGAINST MS ATTACHMENTS
    / \

Reply via email to