Memory limitation with owc?

B

Bill Nalen

Hi, I'm running into a wierd problem. We have a about 20-30 large xml
spreadsheets (20-50 megs each) that I want to load into memory. We are
accessing the sheets via a vb com object and want to preload these
into memory to save the loading time (which ranges from 20 seconds to
1 minute each). What I've done is to create a Windows service that
loads all the ones we want into memory and holds a pointer to each.
Then I can pass off the pointer to any client that wants it. All this
is thread safe, etc. Also, I haven't even gotten to the point where
client processes are requesting a pointer, this problem is only with
loading a number of large xml files.

The problem comes in loading the xml files. I can get up to about
10-12 of these loaded at which point my server tells me about 350 megs
of memory are used by the process (on a 2 gig memory machine). At this
point if I try to load another, the process just appears to hang while
owc is loading the xml (the processor is pegged at 100% for more than
5 minutes).

I'm pretty sure it's not my coding since another group created a
different service to accomplish the same thing and we noticed it there
too. This is a totally different code base. It also works fine to load
a single one and use it.

What has worked in the past was to create another vb com object with a
different guid and then load 10 xmls with the first object and 10 with
the second. But this has maintenance problems.

Here's a brief overview of the service:
VB com object holds an owc spreadsheet
Service creates an instance of the VB com object and tells it to
load an xml file
Service then holds an IDispatch reference to the VB com object


Any ideas? Any known memory limitations to owc?
Thanks
Bill
 
G

Guest

you wouldn't need to load all of these spreadsheets, if you just used OLAP
(SQL Server Analysis Services)

that way, it would just be fast enough to deal with
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top