Nick Kew wrote (concerning bug 38034):
A quick look at the reports shows a lot of competing patches, and a
lot of inconclusive discussion.  So it doesn't look like a simple
matter just to apply patches and close bug.

If you're telling us it is a simple matter, perhaps you could post
a summary here, as a startingpoint for reviewing what you propose.

Don't try to get me flaming again. But I don't see a lot of competing patches. What I see is a lot of effort from outside apache to provide a patch for a five year old bug, with almost no response from apache developers, at least from no one, who would be able or willing to commit a patch.

Although I think, I explained it on http://issues.apache.org/bugzilla/show_bug.cgi?id=38034, here is a summary again. But note: it is up to you, to look at the proposed patched, decide and do the real commit. And please don't try to start another *inconlusive discussion*, if you are not willing to commit a bug fix, that proves to work.

The bug
-------
It's really two bugs:
1. mod_dav does not get the Etag and provide it to ap_meets_conditions.
   So ap_meets_conditions works with no or the wrong Etag, so decisions
   involving the Etag can't be correct.
2. ap_meets_conditions does not and cannot know, whether the resource
   exists. This knowledge is needed for decisions about "If-Match: *"
   and "If-None-Match: *". That's why these go wrong.

How two fix the bugs:
---------------------
There are two alternatives: fix only for mod_dav (it is very important) or fix in general (would be nice).

Fix for mod_dav only:
There are two patches (as far as I can see):
http://issues.apache.org/bugzilla/attachment.cgi?id=20552 (from me)
and
http://mail-archives.apache.org/mod_mbox/httpd-dev/200710.mbox/[EMAIL PROTECTED]
(from Paritosh Shah)
These two patches are not competing. They do fundamentaly the same, but the second one (from Paritosh) is the cleaner one.

Fix it in general:
Even a general solution will still have to fix the bug in mod_dav. There is a patch from Paritosh
http://mail-archives.apache.org/mod_mbox/httpd-dev/200710.mbox/raw/[EMAIL 
PROTECTED]/3

To fix the problem with ap_meets_conditions in general, a change in its interface is necessary, to provide ap_meets_conditions with information about the existence of the file. There has been some discussion about how to do this interface change.
In my opinion, the best solution is suggested by Paritosh in
http://mail-archives.apache.org/mod_mbox/httpd-dev/200711.mbox/[EMAIL PROTECTED]
The changes of the code in ap_meets_conditions(2?) should be exactly the ones in
http://mail-archives.apache.org/mod_mbox/httpd-dev/200710.mbox/raw/[EMAIL 
PROTECTED]/2
But editorial changes are necessary, depending on how the interface will be changed exactly.

As I understand, Paritosh would be willing, to provide a complete working patch for the general solution. But I also understand, that Tim Olsen would not be fond of wasting time on creating fine patches, that will be ignored anyway.

My Proposal:
------------
Use the mod_dav-only patch as an intermediate solution, because it is urgent. This solution will not touch anything but mod_dav and can be removed without side effects as soon as a general solution is available. Take the time to consider how to change the interface of ap_meets_conditions (there might be more issues related to this) and include a clean general solution in 2.2.8.

Competing Patches
-----------------
The only competing patch I know of is
http://issues.apache.org/bugzilla/attachment.cgi?id=21295
It just does not work, because it ignores half of the bugs and relies on assumptions that are most probably wrong.

Werner

Reply via email to