cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Melhem <>
Subject Re: caching in pipelines
Date Thu, 21 Nov 2002 12:54:26 GMT
On Wed, Nov 20, 2002 at 03:48:01PM +0000, Jeremy Quinn wrote:
> Hi All,
> I find the most difficult part of Cocoon to understand ATM (apart from 
> Avalon ;) is Caching.
> My 2.1-dev site currently has pages that might CInclude 4 or 5 separate 
> internal pipelines. Some cacheable, some not (SQL and Lucene).
> It's far too slow, I am trying to work out why, and specifically how 
> any caching might be working.
> Does the CachingCIncludeTransformer cache at the level of the PipeLine, 
> or at the level of the individual CInclude tags within the document?
> Should CInclude be able to cache internal pipelines it calls, if they 
> are made up exclusively of cacheable components? Because it is 
> difficult to see that this is actually happening. Running the Profiler 
> on these internal pipelines appears to show that they are executing 
> every time I hit the same page, taking a similar duration each time 
> they are hit,
> The non-caching CIncludeTransformer actually seems marginally quicker.
> =:-{eek} what's happening?

Im not so privy with the caching/non-caching CIncludeTransformer, so
perhaps someone else could answer this for you.
> I am very confused about the different caching directives, and the 
> effect they have on pipelines.
> Can anyone point me to documentation on this stuff?
> In the 'Profiling' sample, the sitemap has:
> 	<map:pipeline type="caching">
> 		this is only in the profiler sitemap is it a typo?
> 		it is similar to the other profiler @types.

The caching pipeline is not a "profiling" pipeline. It does no

The profile-caching does do profiling. This pipeline simply wraps the 
normal caching pipeline adding profiling points whenever a component 
is added to the pipeline.  (Thus converting the caching pipeline into 
a profile-caching pipeline)

> What is this meant for?
What is the caching pipeline meant for?? The caching pipeline supports
cachable components allowing pipelines to cache their results (using the
classic caching method - longest key)

> What effect does it have on pipelines (<map:match/>s) that contain 
> non-caching components?
Caching pipeline implementations simply do not cache the results of
components which are not caching.

> Should it be used?
Yes, caching is the default pipeline implementation. The pipeline component 
is set to "caching" by default in the top sample webapp sitemap.xml. This 
means that where ever you see the <map:pipeline>
element without the type attribute specified, then the default type is used, 
which is usually "caching". 
> In the two files:
> 	/xml-cocoon2/src/webapp/WEB-INF/entities/sitemap-v04.dtd
> 	/xml-cocoon2/src/webapp/WEB-INF/entities/sitemap-v05.rng
> There is reference to :
> 	<autoCachingPoint>on|off</autoCachingPoint> element.
> What is this all about?

The autoCachingPoint switch is to do with the caching-point pipeline
implementation and nothing else. If you are not using the caching-point
pipeline you should not be concerned with this. 

Michael Melhem

> Thanks for any help!
> regards Jeremy
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, email:

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

View raw message