https://issues.apache.org/bugzilla/show_bug.cgi?id=44696
--- Comment #5 from Ruediger Pluem <[EMAIL PROTECTED]> 2008-08-12 12:21:10 PST --- (In reply to comment #3) > Created an attachment (id=22433) --> (https://issues.apache.org/bugzilla/attachment.cgi?id=22433) [details] > patch to allow multiple passes > > Thanks for pointing these out, > for the first one, I have modified the patch to look for APR_BUCKET_EOS before > commiting the headers. (at both points) Thanks for the patch. Some comments: 1. I know that mod_disk_cache does the same, but I am a bit little worried that there might be brigades that contain an EOS bucket which is *not* the last bucket of the brigade. Yes this means we would need to iterate over the whole brigade each time to find out if there is an EOS bucket in the brigade or not. This increases effort and lowers performance. 2. If you move cache->info = info; before the first if (cache->stale_handle) { you can merge both if (cache->stale_handle) { together in one block. > > I do not understand the second issue, > > if we have a fresh entitiy 1:head/url 1:body/url in our cache, > and Request A comes in with max-age = 0, > as it proceeds, the body gets written first, so we now have 1:head/url > 2:body/url > > Now assuming that at this point Request B comes in, and reads the headers > 1:head/url but since it does not have max-age=0, it decides it can make do > with the current body, but the body is 2:body/url > > However, there is no harm in serving a newer response? we only have a problem > with serving stale content, and 2:body/url is not stale. > 2:body is not stale, but 1:headers and 2:body might not match together, e.g. regarding the Etag or Content-MD5 headers. Also Range requests could deliver false results in this case. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
