[prev in list] [next in list] [prev in thread] [next in thread]
List: dav-dev
Subject: [dav-dev] Does Apache 2.2.4's mod_dav module properly handle errors
From: Kevin Stearns <kstearns () us ! ibm ! com>
Date: 2007-07-13 17:08:26
Message-ID: OF8CC76A96.F966B3F1-ON85257317.00512D01-85257317.005DE4A1 () us ! ibm ! com
[Download RAW message or body]
Hello, dav developers.
I would like to discuss the behavior of the dav_method_put function in
Apache 2.2.4's
mod_dav module that I believe is currently incorrect.
Currently, in the dav_method_put in apache 2.2.4 , if ap_get_brigade
returns an
error then the entire file gets deleted by the call to
resource->hooks->close_stream
before the dav_method_put returns. This is true even if the client
specifies a the
content-range field in the PUT request.
It seems to me, for a PUT operation where an entire file is being
transferred a
delete would be the proper course of action to undo the transaction. But,
deleting
an entire file when a PUT transaction that is attempting to change just a
portion
of a previously existing file would be the wrong way to restore the state
of the
file to what it was before the PUT was processed.
I don't know if this dav_method_put behavior is by design or is meant for
conformance to the webdav RFCs. I also do not know if any current webdav
clients
depend on this behavior in anyway.
Changing this behavior would allow webdav clients to be developed that can
transfer
multi-giga bytes files with out needing to re-send the entire file from
the beginning after
transient network problems.
I think that Apache bug 38148
http://issues.apache.org/bugzilla/show_bug.cgi?id=38148
expresses similar problem. But no changes have been made with regards to
that.
_______________________________________________
dav-dev maillist - dav-dev@lyra.org
http://dav.lyra.org/mailman/listinfo/dav-dev
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic