Hi Tore,

        I finally got around to looking at your code in the jira 
attachments.  It looks like it will need a little bit of updating to get 
it 3.0 ready, but at the end of the day it still pulls the whole thing 
into memory at some point.  I might ping you over the next week, if you 
don't mind, about this as I quickly (i.e. panic-mode) try to cobble 
something together.  I'm just learning cayenne so a lot of the internals 
are still not very clear to me.

Thanks.
-Mike




From:
Tore Halset <hal...@pvv.ntnu.no>
To:
user@cayenne.apache.org
Date:
05/25/2010 07:58 AM
Subject:
Re: Blobs in the DataContext



Hello.

I tried to implement support for streaming blobs back in 2006. Sorry, but 
it never got completed. I still think it is a nice feature. If you want to 
work on this issue, you might want to take a look at 
streaming_blob_try2.zip from https://issues.apache.org/jira/browse/CAY-316

Regards,
 - Tore.

On 21. mai 2010, at 23.27, mgarg...@escholar.com wrote:

> Hi,
> 
>        I'm using cayenne to store large files in BLOBs as a process 
runs. 
> The first step of the process is storing large files (~ 600MB) and they 
> are ending up in the DB just fine, then we run some tasks and get some 
> output files, and then store the large output files (~ 500MB) to the DB. 

> The output files are not making it into the DB.  In fact it appears that 

> the whole program is just sitting and waiting, for what, i have no idea 
> and after you try and spawn another thread in the program it throws an 
out 
> of memory exception.  I was trying to figure out why the larger input 
> files got persisted fine, but the large output files cause a problem and 

> the only thing I could think of was that when the BLOBs are created they 

> are cached in the DataContext and are never cleared eventually just 
> causing the memory to be exhausted.  Is this possible?  Anything else 
> anyone can think of?
> 
> note: I'm also compressing the stream in memory as I'm adding it to the 
> byte[], but still... it works for the input files.  also, each of these 
> phases of the process is followed by a commit, so all the input files 
are 
> committed together and all the output files should be committed together 

> as well, but this never happens.
> 
> Thank you for any help you may be able to provide.
> -Mike



Reply via email to