On 08.06.2015 19:06, Evgeny Kotkov wrote:
> Branko Čibej <br...@wandisco.com> writes:
>
>> I completed your patch and committed the fix in r1683311. Please review!
>>
>> -- Brane
> Sorry, I was on vacation last week and couldn't look at this fix earlier.
>
> I reviewed the committed patch and tested how Subversion 1.9.x behaves with 
> it,
> as the change itself got merged into branches/1.9.x in r1683658.  From what I
> witness, 'svnadmin verify' now erroneously reports the same error twice for a
> corrupted repository:
>
>   * Verifying repository metadata ...
>   * Verified revision 0.
>   * Verified revision 1.
>   * Error verifying revision 2.
>   svnadmin: E160062: Malformed node revision ID string
>   svnadmin: E160062: Malformed node revision ID string
>
> Relevant hunks of r1683311 are located in subversion/libsvn_repos/dump.c:2433
> and :2466, where we send the error notification and immediately return the 
> same
> error to the caller:
> [[[
>     ...
>     else if (err)
>       {
>         notify_verification_error(rev, err, notify_func, notify_baton,
>                                   iterpool);
>
>         if (!keep_going)
>           {
>             /* Return the error, the caller doesn't want us to continue. */
>             return svn_error_trace(err);
>           }
>     ...
> ]]]
>
> The caller (subversion/svnadmin/svnadmin.c:1908) writes both of these errors
> to stderr, and that results in the erroneous output.

Good catch. I suppose that means we shouldn't send the notification when
!keep_going, right?

-- Brane

Reply via email to