httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeff Trawick <traw...@gmail.com>
Subject Re: [users@httpd] Why does a DELETE transaction check for locks on Parent Collection
Date Thu, 27 Sep 2012 01:16:29 GMT
(Greg's response bounced off of users@.  Tony, follow up on dev@ if
you need to follow up.)

On Wed, Sep 26, 2012 at 8:41 PM, Greg Stein <gstein@gmail.com> wrote:
> The parent collection is modified as a result of the DELETE (a
> resource is removed from the set). Thus, the parent requirements must
> be met.
>
> On Wed, Sep 26, 2012 at 8:35 PM, Jeff Trawick <trawick@gmail.com> wrote:
>> adding dev@...
>>
>> On Wed, Sep 26, 2012 at 4:53 PM, Bennett, Tony <Bennett.Tony@con-way.com> wrote:
>>> Environment:
>>>         Version:            2.2.16
>>>         Platform OS:    AIX 6.1
>>>         Configuration:  WebDav enabled
>>>         Client:     Windows 7 "Mapped Network Drive"
>>>
>>> Here is the interaction:
>>>
>>> Client  sends a PUT
>>> Server  responds with a 200
>>> Client  sends a LOCK request
>>> Server  responds with a 200 and this header is in the response:
>>>                 Lock-Token: <opaquelocktoken:f86e1996-0726-11e2-b22c-c30f656528a6>
>>> Client  sends a DELETE and includes this header in the request:
>>>                 If: (<opaquelocktoken:f86e1996-0726-11e2-b22c-c30f656528a6>)
>>> Server  responds with a 424 Failed Dependency and includes this text in its response
body:
>>>        <?xml version="1.0" encoding="utf-8"?>
>>>        <D:multistatus xmlns:D="DAV:">
>>>        <D:response>
>>>        <D:href>/TEST_DIR</D:href>
>>>        <D:status>HTTP/1.1 412 Precondition Failed</D:status>
>>>        <D:responsedescription>A validation error has occurred on the parent
resource,
>>>        preventing the operation on the resource specified by the Request-URI.
The error was:
>>>        The precondition(s) specified by the "If:" header did not match this resource.
At
>>>        least one failure is because: a State-token was supplied, but it was not
found in the
>>>        locks on this resource.</D:responsedescription>
>>>        </D:response>
>>>        </D:multistatus>
>>>
>>> Here is a subset of the Apache Error Log:
>>>       Could not DELETE /TEST_DIR/~$EXCEL_File.xlsx due to a failed precondition
(e.g. locks).  [424, #0]
>>>      (11)Resource temporarily unavailable: An error occurred on another resource,
preventing the requested operation on this resource.  [424, #0]
>>>
>>> I tried locking/deleting with cadaver, which worked.... it had a slightly different
"If" header:
>>>      If: <http://dmsa.con-way.com/TEST_DIR/~%24EXCEL_File.xlsx> (<opaquelocktoken:fec89268-081a-11e2-a1d7-c30f65659e0a>)
>>>
>>> My question is why did Apache check for the "opaquetoken" against the parent
collection when the request came from Win7...???
>>>
>>> I can't find a requirement to do so in the standard (RFC2518 or RFC4918).
>>>
>>> NOTE:  I tried locking/deleting with cadaver, which worked.... it had a slightly
different "If" header:
>>>      If: <http://dmsa.con-way.com/TEST_DIR/~%24EXCEL_File.xlsx> (<opaquelocktoken:fec89268-081a-11e2-a1d7-c30f65659e0a>)
>>>
>>> Any insight would be helpful.
>>>
>>> -tony
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
>>> For additional commands, e-mail: users-help@httpd.apache.org
>>>
>>
>>
>>
>> --
>> Born in Roswell... married an alien...
>> http://emptyhammock.com/



-- 
Born in Roswell... married an alien...
http://emptyhammock.com/

Mime
View raw message