[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Custom error messages

From: C. Michael Pilato <cmpilato_at_collab.net>
Date: Fri, 07 Mar 2008 14:08:55 -0500

Karl Fogel wrote:
> "Oren Eini (Murphy & Associates)" <v-orene_at_microsoft.com> writes:
>> Errors are sent in this format using DAV:
>>
>> <?xml version="1.0" encoding="utf-8"?>
>> <D:error xmlns:D="DAV:" xmlns:m="http://apache.org/dav/xmlns" xmlns:C="svn:">
>> <C:error/>
>> <m:human-readable errcode="160024">
>> The version resource does not correspond to the resource within the transaction. Either the requested version resource is out of date (needs to be updated), or the requested version resource is newer than the transaction root (restart the commit).
>> </m:human-readable>
>> </D:error>
>>
>> errcode match the standard SVN error codes, and on some cases 16006
>> (revision doesn't exist), the client will display the message from the
>> server. In other cases, it appears to use just the errcode number and
>> internal resource for that.
>
> Now this does sound like it might be a bug in the Subversion client, if
> it's behaving differently on receiving the same error (in which case
> this list is, of course, the right place!) But we'll need a full
> reproduction recipe as described in
>
> http://subversion.tigris.org/bugs.html
>
> ...if you have time to write one. Thanks!

Karl, I think Oren is saying two things:

    1. that we use the <D:error> tags in many of our various WebDAV
        responses, but not all of them.
    2. that sometimes the client, upon receiving one of those error
        tags in a WebDAV response, relays the human-readable text in
        the tag to the user; sometimes it appears to discard it.

I believe that the reason for #1 is that sometimes errors are returned to
the client not by mod_dav_svn, but by mod_dav (which sits atop mod_dav_svn
in the architectural diagram and know nothing of Subversion-specific errors).

As for #2, I don't think the concern is that an error isn't treated as an
error, but that sometimes that human-readable descriptive text doesn't
survive the long trip from mod_dav_svn to the user's console. Perhaps
sometimes the error received from the server gets wrapped by another such
that the user doesn't see the original error text? I dunno.

-- 
C. Michael Pilato <cmpilato_at_collab.net>
CollabNet   <>   www.collab.net   <>   Distributed Development On Demand

Received on 2008-03-07 20:09:05 CET

This is an archived mail posted to the Subversion Dev mailing list.