cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Boisvert, Eric" <>
Subject RE : Does CInclude/Include transformers buffer incoming documents ?
Date Sun, 16 Dec 2007 00:35:31 GMT
Hi Babak
thanks for your reply.
I agree in principle, this is how cocoon works, in theory. But, for example,  as soon as one
puts an XSLT transformer in the pipeline, the document is indeed read completly in memory
(in a DOM structure) simply because XSLT (XPath) allows to reference any part of the document
- which force the whole document to buffered in memory prior to execute XSLT.  
We work with WFS services (Web Feature Service) which query geographical information from
quite large databases (one in particular has 500000 features) and generate quite verbose GML
documents.  To deal with transformation, we use STX because XSLT was loading the whole thing
in memory.  
Now I'm redesigning the architecture and exploring the idea of using Cinclude to dispatch
WFS queries and I was afraid Cinclude was 'buffering' the document in memory (which would
cancel the benefit of using STX). Did not make a full blown test just yet, but wanted to have
other people opinions.


De: Babak Farhang []
Date: sam. 2007-12-15 18:10
Objet : Re: Does CInclude/Include transformers buffer incoming documents ?

Hi Eric,

I'm the local know-nothing trying to learn cocoon.  From what I've
read so far, I'd be very surprised if the included document were read
entirely in memory.  The whole point of basing the architecture on SAX
events is to allow just this type of streaming that you're writing


On Dec 15, 2007 10:06 AM, Boisvert, Eric <> wrote:
> Hi all
> Just a question regarding how CInclude, Include and XInclude works (maybe a dumb question
afterall).  I need to pull rather large documents (several megabytes) using either one of
including mechanisms.
> Does CInclude reads _all_ the document to include in memory and *then* streams it down
the pipe or does it start sending SAX event as soon as they are read ? (same question for
Include and XInclude).
> I checked the source code but I'm not familliar enough with all the details to figure
this out for sure.  I suspect that since Include can make parallel requests, I suspect it
buffers the document.
> Thanks
> Eric
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message