cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject DO NOT REPLY [Bug 25887] - [PATCH] Fix for caching of nested aggregations
Date Wed, 17 Mar 2004 12:44:22 GMT
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=25887>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=25887

[PATCH] Fix for caching of nested aggregations





------- Additional Comments From jh@domek.be  2004-03-17 12:44 -------
I dived into this quite a while back, it took me about half a day to figure out
exactly where things were going awkard. The patch works but i don't really know
why, i can only guess ! 

The complete cachekey for a pipeline is the composition of the individual
cachekeys of the pipeline components. 
So if a-b-c-d-e-f-g-h is the cachekey, and it is marked as invalid because
element d was updated then the algorithm should descend down the cachekey to see
what is actually still valid cached content. Now in snippet

if (i > 0) {
 this.fromCacheKey.removeLastKey();
  if (!this.completeResponseIsCached) {
    this.firstProcessedTransformerIndex--;
  }
} else {
 this.fromCacheKey = null;
}

it seems that you only remove the last element from the cachekey and don't
bother checking deeper into it.

Sorry i can't give you more detail, i remember spending ages finding out exactly
where this logic was hidden - i can't really justify why below patch works :(, i
just know it does :)

Mime
View raw message