cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Vadim Gritsenko <va...@reverycodes.com>
Subject Re: svn commit: r169169 - in /cocoon/blocks/unsupported/template/trunk: java/org/apache/cocoon/template/jxtg/JXTemplateGenerator
Date Tue, 10 May 2005 15:28:38 GMT
Sylvain Wallez wrote:
> Vadim Gritsenko wrote:
> 
>> Sylvain Wallez wrote:
>>
>>> The transient store is meant as a cache for objects that aren't 
>>> serializable, whereas the regular store has a memory front-end and 
>>> some persistent filesystem swap, and therefore can only accept 
>>> serializable objects.
>>
>>
>> Not true. Regular store must accept all objects. See also [1].
>>
>> Vadim
>>
>> [1] http://cocoon.apache.org/2.1/installing/updating.html#Store
> 
> 
> Hmm... although the old implementation *may* have been able to accept 
> non-serializable objects, it has AFAIK never formally be defined in the 
> general store contract,

So now you will blame this bug on incomplete javadoc, huh? :-)


> and this is why we also have the transient store role.

No, that's not necessarily the right conclusion. I say we have transient store 
for objects which should not - or even must not! - be persisted across system 
restarts - even if they are serializable!


> Considering the current issues with the newer cache systems we use (that 
> integrate both memory front-end and persistent swap)

It does not mean that they are better, though. Even MRUMemoryStore is more 
efficient.


> and can't handle 
> non-serializable objects, I think it would be better to make it clear 
> that non-serializable objects have to go in the transient store.

It is a serious backward incompatible change in contract. It might be better if 
general store simply passes non serializable objects to the transient store. 
Even better is fixing these new buggy stores. At the very least, this can be 
fixed in Cocoon itself - by wrapping objects into serializable holder.

Vadim

Mime
View raw message