main logo
Subject: Re: Thread safety in Valentina
Author: Steve Baxter
Posted: 2001/05/30 15:59:25
 
View Entire Thread
New Search


>
> on 5/30/01 14:03, Steve Baxter at s.baxter-mail AT improvision .D.O.T com wrote:
>
>>> So you want do LONG write into BLOB and in the same time work with other
>>> records (of other tables), yes? Looks as feature of Server :-)
>>
>> Yes that's what I want to do. The blob write might be 100-200MB, doing it
>> asynchronously will enable the user to continue working while it saves
>> changes in the background.
>
> another question:
> this 100-200MB come from other file I think. Not from RAM, yes?

No, all in RAM. As I say, most of our production machines have 1GB RAM or
more. I suspect our application stresses Valentina more than any other!!

> If you have so big BLOB for one record then how many records do you have in
> total ???

It varies. The 2GB limit is actually quite a problem though. One thing I
have implemented is a solution where Valentina does the database-type work
and we store the actual "blob" data in lots of separate files. This works
pretty well! I might have to restrict our "lazy writing" to this.

>> Actually, as long as the database is semaphored, this might work OK. My app
>> caches quite a lot of the data from the database - in the worst case the
>> user would have to wait on a database read while the write thread was
>> completing the current write, but the caches minimise reads in most
>> circumstances. I can also write the BLOB a bit at a time (say 256K) which
>> will give blocked threads a chance to access the database quite often.
>
> Yes Steve, I think this is the best way for you now. Save BLOB by parts.

Cheers,

Steve.


-------------------------------------------------------------
The Valentina mailing list is brought to you by MacServe.net
For info on lists services, see http://www.macserve.net/lists.html
 
©2001 Steve Baxter
<-- Prior Message New Search Next Message -->