You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by pr...@apache.org on 2013/07/01 14:01:38 UTC
svn commit: r1498394 - in /subversion/branches/verify-keep-going/subversion:
libsvn_repos/dump.c svnadmin/svnadmin.c
Author: prabhugs
Date: Mon Jul 1 12:01:38 2013
New Revision: 1498394
URL: http://svn.apache.org/r1498394
Log:
Do not show summary header if there is no corruption. Also, show the full
error chain in summary.
* subversion/libsvn_repos/dump.c
(svn_repos_verify_fs3): Show the summary header only if there are corruptions.
* subversion/svnadmin/svnadmin.c
(repos_notify_handler): Show the full error chain in the error summary.
Modified:
subversion/branches/verify-keep-going/subversion/libsvn_repos/dump.c
subversion/branches/verify-keep-going/subversion/svnadmin/svnadmin.c
Modified: subversion/branches/verify-keep-going/subversion/libsvn_repos/dump.c
URL: http://svn.apache.org/viewvc/subversion/branches/verify-keep-going/subversion/libsvn_repos/dump.c?rev=1498394&r1=1498393&r2=1498394&view=diff
==============================================================================
--- subversion/branches/verify-keep-going/subversion/libsvn_repos/dump.c (original)
+++ subversion/branches/verify-keep-going/subversion/libsvn_repos/dump.c Mon Jul 1 12:01:38 2013
@@ -1611,13 +1611,15 @@ svn_repos_verify_fs3(svn_repos_t *repos,
}
/* Show the summary. */
- if (notify_func && keep_going)
+ if (notify_func && keep_going && found_corruption)
{
notify_verification_summary(err, notify_func, notify_baton, iterpool);
for(i=0; i < error_summary->nelts; i++)
{
- struct error_list *err_list = APR_ARRAY_IDX(error_summary, i, struct error_list *);
- notify_verification_error_summary(err_list->rev, err_list->err, notify_func, notify_baton,
+ struct error_list *err_list = APR_ARRAY_IDX(error_summary, i,
+ struct error_list *);
+ notify_verification_error_summary(err_list->rev, err_list->err,
+ notify_func, notify_baton,
iterpool);
}
}
Modified: subversion/branches/verify-keep-going/subversion/svnadmin/svnadmin.c
URL: http://svn.apache.org/viewvc/subversion/branches/verify-keep-going/subversion/svnadmin/svnadmin.c?rev=1498394&r1=1498393&r2=1498394&view=diff
==============================================================================
--- subversion/branches/verify-keep-going/subversion/svnadmin/svnadmin.c (original)
+++ subversion/branches/verify-keep-going/subversion/svnadmin/svnadmin.c Mon Jul 1 12:01:38 2013
@@ -850,13 +850,16 @@ repos_notify_handler(void *baton,
case svn_repos_notify_failure_summary:
if (notify->revision != SVN_INVALID_REVNUM)
cmdline_stream_printf(feedback_stream, scratch_pool,
- _("r%ld: %s\n"),
- notify->revision, notify->err->message);
+ _("\nRevision %ld \n"),
+ notify->revision);
+ if (notify->err)
+ svn_handle_error2(notify->err, stderr, FALSE /* non-fatal */,
+ "svnadmin: ");
return;
case svn_repos_notify_summary:
cmdline_stream_printf(feedback_stream, scratch_pool,
- _("\n-----Summary of corrupt revisions-----\n"));
+ _("\n-----Summary of corrupt revisions-----"));
return;
case svn_repos_notify_dump_rev_end:
Re: svn commit: r1498394 - in
/subversion/branches/verify-keep-going/subversion: libsvn_repos/dump.c
svnadmin/svnadmin.c
Posted by Stefan Sperling <st...@elego.de>.
On Wed, Jul 03, 2013 at 11:56:16AM +0200, Branko Čibej wrote:
> svnadmin: E165011: Repository '/tmp/testrepo' failed to verify
> Summary of corrupt revisions:
> Revision 2: E160004: Final line in revision file r2 missing space
> Revision 4: E160004: Invalid change kind in rev file
> Revision 6: E160004: Final line in revision file r6 missing space
>
> Repeating the svnadmin: prefix in the summary seems unnecessary.
+1
Re: svn commit: r1498394 - in /subversion/branches/verify-keep-going/subversion:
libsvn_repos/dump.c svnadmin/svnadmin.c
Posted by Branko Čibej <br...@wandisco.com>.
On 03.07.2013 11:41, Prabhu wrote:
> On 07/01/2013 05:35 PM, Daniel Shahaf wrote:
>>
>>> +++
>>> subversion/branches/verify-keep-going/subversion/svnadmin/svnadmin.c
>>> Mon Jul 1 12:01:38 2013
>>> @@ -850,13 +850,16 @@ repos_notify_handler(void *baton,
>>> case svn_repos_notify_failure_summary:
>>> if (notify->revision != SVN_INVALID_REVNUM)
>>> cmdline_stream_printf(feedback_stream, scratch_pool,
>>> - _("r%ld: %s\n"),
>>> - notify->revision, notify->err->message);
>>> + _("\nRevision %ld \n"),
>>> + notify->revision);
>>> + if (notify->err)
>>> + svn_handle_error2(notify->err, stderr, FALSE /* non-fatal */,
>>> + "svnadmin: ");
>> How about using "svnadmin: r%ld: " as the prefix, for clarity?
>>
>> Daniel
> Thanks Daniel,
>
> Currently the implementation looks like
>
> <
> $ svnadmin verify /tmp/testrepo --keep-going
> * Verifying repository metadata ...
> * Verified revision 0.
> * Verified revision 1.
> * Error verifying revision 2.
> svnadmin: E160004: Final line in revision file r2 missing space
> * Verified revision 3.
> * Error verifying revision 4.
> svnadmin: E160004: Invalid change kind in rev file
> * Verified revision 5.
> * Error verifying revision 6.
> svnadmin: E160004: Final line in revision file r6 missing space
>
> -----Summary of corrupt revisions-----
> Revision 2
> svnadmin: E160004: Final line in revision file r2 missing space
>
> Revision 4
> svnadmin: E160004: Invalid change kind in rev file
>
> Revision 6
> svnadmin: E160004: Final line in revision file r6 missing space
> svnadmin: E165011: Repository '/tmp/testrepo' failed to verify
>
> >
>
> Do you want it to look like,
>
> <
> $ svnadmin verify /tmp/testrepo/ --keep-going
> * Verifying repository metadata ...
> * Verified revision 0.
> * Verified revision 1.
> * Error verifying revision 2.
> svnadmin: E160004: Final line in revision file r2 missing space
> * Verified revision 3.
> * Error verifying revision 4.
> svnadmin: E160004: Invalid change kind in rev file
> * Verified revision 5.
> * Error verifying revision 6.
> svnadmin: E160004: Final line in revision file r6 missing space
>
> -----Summary of corrupt revisions-----
> Revision 2: svnadmin: E160004: Final line in revision file r2 missing
> space
> Revision 4: svnadmin: E160004: Invalid change kind in rev file
> Revision 6: svnadmin: E160004: Final line in revision file r6 missing
> space
> Revision 6: svnadmin: E165011: Repository '/tmp/testrepo' failed to
> verify
The last message ("failed to verify") is not specific to revision 6;
that it's attached to the list of corrupt revisions is extremely
confusing. IMO it should be something like:
svnadmin: E165011: Repository '/tmp/testrepo' failed to verify
Summary of corrupt revisions:
Revision 2: E160004: Final line in revision file r2 missing space
Revision 4: E160004: Invalid change kind in rev file
Revision 6: E160004: Final line in revision file r6 missing space
Repeating the svnadmin: prefix in the summary seems unnecessary.
-- Brane
--
Branko Čibej | Director of Subversion
WANdisco // Non-Stop Data
e. brane@wandisco.com
Re: svn commit: r1498394 - in
/subversion/branches/verify-keep-going/subversion:
libsvn_repos/dump.c svnadmin/svnadmin.c
Posted by Daniel Shahaf <da...@elego.de>.
Prabhu wrote on Wed, Jul 03, 2013 at 15:11:36 +0530:
> Do you want it to look like,
>
> <
> $ svnadmin verify /tmp/testrepo/ --keep-going
> * Verifying repository metadata ...
> * Verified revision 0.
> * Verified revision 1.
> * Error verifying revision 2.
> svnadmin: E160004: Final line in revision file r2 missing space
> * Verified revision 3.
> * Error verifying revision 4.
> svnadmin: E160004: Invalid change kind in rev file
> * Verified revision 5.
> * Error verifying revision 6.
> svnadmin: E160004: Final line in revision file r6 missing space
>
> -----Summary of corrupt revisions-----
> Revision 2: svnadmin: E160004: Final line in revision file r2 missing space
> Revision 4: svnadmin: E160004: Invalid change kind in rev file
> Revision 6: svnadmin: E160004: Final line in revision file r6 missing space
> Revision 6: svnadmin: E165011: Repository '/tmp/testrepo' failed to verify
Two questions about this:
- Change "Revision 2:" to "r2:"?
- That's not a representative example since none of the error chains
have >1 error in them. What would the output be with those?
Re: svn commit: r1498394 - in /subversion/branches/verify-keep-going/subversion:
libsvn_repos/dump.c svnadmin/svnadmin.c
Posted by Prabhu <pr...@collab.net>.
On 07/03/2013 03:11 PM, Prabhu wrote:
> On 07/01/2013 05:35 PM, Daniel Shahaf wrote:
>>
>>> +++
>>> subversion/branches/verify-keep-going/subversion/svnadmin/svnadmin.c
>>> Mon Jul 1 12:01:38 2013
>>> @@ -850,13 +850,16 @@ repos_notify_handler(void *baton,
>>> case svn_repos_notify_failure_summary:
>>> if (notify->revision != SVN_INVALID_REVNUM)
>>> cmdline_stream_printf(feedback_stream, scratch_pool,
>>> - _("r%ld: %s\n"),
>>> - notify->revision, notify->err->message);
>>> + _("\nRevision %ld \n"),
>>> + notify->revision);
>>> + if (notify->err)
>>> + svn_handle_error2(notify->err, stderr, FALSE /* non-fatal */,
>>> + "svnadmin: ");
>> How about using "svnadmin: r%ld: " as the prefix, for clarity?
>>
>> Daniel
> Thanks Daniel,
>
> Currently the implementation looks like
>
> <
> $ svnadmin verify /tmp/testrepo --keep-going
> * Verifying repository metadata ...
> * Verified revision 0.
> * Verified revision 1.
> * Error verifying revision 2.
> svnadmin: E160004: Final line in revision file r2 missing space
> * Verified revision 3.
> * Error verifying revision 4.
> svnadmin: E160004: Invalid change kind in rev file
> * Verified revision 5.
> * Error verifying revision 6.
> svnadmin: E160004: Final line in revision file r6 missing space
>
> -----Summary of corrupt revisions-----
> Revision 2
> svnadmin: E160004: Final line in revision file r2 missing space
>
> Revision 4
> svnadmin: E160004: Invalid change kind in rev file
>
> Revision 6
> svnadmin: E160004: Final line in revision file r6 missing space
> svnadmin: E165011: Repository '/tmp/testrepo' failed to verify
>
> >
>
> Do you want it to look like,
>
> <
> $ svnadmin verify /tmp/testrepo/ --keep-going
> * Verifying repository metadata ...
> * Verified revision 0.
> * Verified revision 1.
> * Error verifying revision 2.
> svnadmin: E160004: Final line in revision file r2 missing space
> * Verified revision 3.
> * Error verifying revision 4.
> svnadmin: E160004: Invalid change kind in rev file
> * Verified revision 5.
> * Error verifying revision 6.
> svnadmin: E160004: Final line in revision file r6 missing space
>
> -----Summary of corrupt revisions-----
> Revision 2: svnadmin: E160004: Final line in revision file r2 missing
> space
> Revision 4: svnadmin: E160004: Invalid change kind in rev file
> Revision 6: svnadmin: E160004: Final line in revision file r6 missing
> space
> svnadmin: E165011: Repository '/tmp/testrepo' failed to verify
> >
>
> I am ok with the second type because it needs lesser number of lines
> to display the summary.
>
>
> Regards
> Prabhu
Re: svn commit: r1498394 - in /subversion/branches/verify-keep-going/subversion:
libsvn_repos/dump.c svnadmin/svnadmin.c
Posted by Prabhu <pr...@collab.net>.
On 07/03/2013 03:11 PM, Prabhu wrote:
> On 07/01/2013 05:35 PM, Daniel Shahaf wrote:
>>
>>> +++
>>> subversion/branches/verify-keep-going/subversion/svnadmin/svnadmin.c
>>> Mon Jul 1 12:01:38 2013
>>> @@ -850,13 +850,16 @@ repos_notify_handler(void *baton,
>>> case svn_repos_notify_failure_summary:
>>> if (notify->revision != SVN_INVALID_REVNUM)
>>> cmdline_stream_printf(feedback_stream, scratch_pool,
>>> - _("r%ld: %s\n"),
>>> - notify->revision, notify->err->message);
>>> + _("\nRevision %ld \n"),
>>> + notify->revision);
>>> + if (notify->err)
>>> + svn_handle_error2(notify->err, stderr, FALSE /* non-fatal */,
>>> + "svnadmin: ");
>> How about using "svnadmin: r%ld: " as the prefix, for clarity?
>>
>> Daniel
> Thanks Daniel,
>
> Currently the implementation looks like
>
> <
> $ svnadmin verify /tmp/testrepo --keep-going
> * Verifying repository metadata ...
> * Verified revision 0.
> * Verified revision 1.
> * Error verifying revision 2.
> svnadmin: E160004: Final line in revision file r2 missing space
> * Verified revision 3.
> * Error verifying revision 4.
> svnadmin: E160004: Invalid change kind in rev file
> * Verified revision 5.
> * Error verifying revision 6.
> svnadmin: E160004: Final line in revision file r6 missing space
>
> -----Summary of corrupt revisions-----
> Revision 2
> svnadmin: E160004: Final line in revision file r2 missing space
>
> Revision 4
> svnadmin: E160004: Invalid change kind in rev file
>
> Revision 6
> svnadmin: E160004: Final line in revision file r6 missing space
> svnadmin: E165011: Repository '/tmp/testrepo' failed to verify
>
> >
>
> Do you want it to look like,
>
> <
> $ svnadmin verify /tmp/testrepo/ --keep-going
> * Verifying repository metadata ...
> * Verified revision 0.
> * Verified revision 1.
> * Error verifying revision 2.
> svnadmin: E160004: Final line in revision file r2 missing space
> * Verified revision 3.
> * Error verifying revision 4.
> svnadmin: E160004: Invalid change kind in rev file
> * Verified revision 5.
> * Error verifying revision 6.
> svnadmin: E160004: Final line in revision file r6 missing space
>
> -----Summary of corrupt revisions-----
> Revision 2: svnadmin: E160004: Final line in revision file r2 missing
> space
> Revision 4: svnadmin: E160004: Invalid change kind in rev file
> Revision 6: svnadmin: E160004: Final line in revision file r6 missing
> space
> svnadmin: E165011: Repository '/tmp/testrepo' failed to verify
> >
>
> I am ok with the second type because it needs lesser number of lines
> to display the summary.
>
>
> Regards
> Prabhu
Re: svn commit: r1498394 - in
/subversion/branches/verify-keep-going/subversion:
libsvn_repos/dump.c svnadmin/svnadmin.c
Posted by Daniel Shahaf <da...@elego.de>.
Prabhu wrote on Wed, Jul 03, 2013 at 15:11:36 +0530:
> Do you want it to look like,
>
> <
> $ svnadmin verify /tmp/testrepo/ --keep-going
> * Verifying repository metadata ...
> * Verified revision 0.
> * Verified revision 1.
> * Error verifying revision 2.
> svnadmin: E160004: Final line in revision file r2 missing space
> * Verified revision 3.
> * Error verifying revision 4.
> svnadmin: E160004: Invalid change kind in rev file
> * Verified revision 5.
> * Error verifying revision 6.
> svnadmin: E160004: Final line in revision file r6 missing space
>
> -----Summary of corrupt revisions-----
> Revision 2: svnadmin: E160004: Final line in revision file r2 missing space
> Revision 4: svnadmin: E160004: Invalid change kind in rev file
> Revision 6: svnadmin: E160004: Final line in revision file r6 missing space
> Revision 6: svnadmin: E165011: Repository '/tmp/testrepo' failed to verify
Two questions about this:
- Change "Revision 2:" to "r2:"?
- That's not a representative example since none of the error chains
have >1 error in them. What would the output be with those?
Re: svn commit: r1498394 - in /subversion/branches/verify-keep-going/subversion:
libsvn_repos/dump.c svnadmin/svnadmin.c
Posted by Prabhu <pr...@collab.net>.
On 07/01/2013 05:35 PM, Daniel Shahaf wrote:
>
>> +++ subversion/branches/verify-keep-going/subversion/svnadmin/svnadmin.c Mon Jul 1 12:01:38 2013
>> @@ -850,13 +850,16 @@ repos_notify_handler(void *baton,
>> case svn_repos_notify_failure_summary:
>> if (notify->revision != SVN_INVALID_REVNUM)
>> cmdline_stream_printf(feedback_stream, scratch_pool,
>> - _("r%ld: %s\n"),
>> - notify->revision, notify->err->message);
>> + _("\nRevision %ld \n"),
>> + notify->revision);
>> + if (notify->err)
>> + svn_handle_error2(notify->err, stderr, FALSE /* non-fatal */,
>> + "svnadmin: ");
> How about using "svnadmin: r%ld: " as the prefix, for clarity?
>
> Daniel
Thanks Daniel,
Currently the implementation looks like
<
$ svnadmin verify /tmp/testrepo --keep-going
* Verifying repository metadata ...
* Verified revision 0.
* Verified revision 1.
* Error verifying revision 2.
svnadmin: E160004: Final line in revision file r2 missing space
* Verified revision 3.
* Error verifying revision 4.
svnadmin: E160004: Invalid change kind in rev file
* Verified revision 5.
* Error verifying revision 6.
svnadmin: E160004: Final line in revision file r6 missing space
-----Summary of corrupt revisions-----
Revision 2
svnadmin: E160004: Final line in revision file r2 missing space
Revision 4
svnadmin: E160004: Invalid change kind in rev file
Revision 6
svnadmin: E160004: Final line in revision file r6 missing space
svnadmin: E165011: Repository '/tmp/testrepo' failed to verify
>
Do you want it to look like,
<
$ svnadmin verify /tmp/testrepo/ --keep-going
* Verifying repository metadata ...
* Verified revision 0.
* Verified revision 1.
* Error verifying revision 2.
svnadmin: E160004: Final line in revision file r2 missing space
* Verified revision 3.
* Error verifying revision 4.
svnadmin: E160004: Invalid change kind in rev file
* Verified revision 5.
* Error verifying revision 6.
svnadmin: E160004: Final line in revision file r6 missing space
-----Summary of corrupt revisions-----
Revision 2: svnadmin: E160004: Final line in revision file r2 missing space
Revision 4: svnadmin: E160004: Invalid change kind in rev file
Revision 6: svnadmin: E160004: Final line in revision file r6 missing space
Revision 6: svnadmin: E165011: Repository '/tmp/testrepo' failed to verify
>
I am ok with the second type because it needs lesser number of lines to
display the summary.
Regards
Prabhu
Re: svn commit: r1498394 - in /subversion/branches/verify-keep-going/subversion:
libsvn_repos/dump.c svnadmin/svnadmin.c
Posted by Prabhu <pr...@collab.net>.
On 07/01/2013 05:35 PM, Daniel Shahaf wrote:
>
>> +++ subversion/branches/verify-keep-going/subversion/svnadmin/svnadmin.c Mon Jul 1 12:01:38 2013
>> @@ -850,13 +850,16 @@ repos_notify_handler(void *baton,
>> case svn_repos_notify_failure_summary:
>> if (notify->revision != SVN_INVALID_REVNUM)
>> cmdline_stream_printf(feedback_stream, scratch_pool,
>> - _("r%ld: %s\n"),
>> - notify->revision, notify->err->message);
>> + _("\nRevision %ld \n"),
>> + notify->revision);
>> + if (notify->err)
>> + svn_handle_error2(notify->err, stderr, FALSE /* non-fatal */,
>> + "svnadmin: ");
> How about using "svnadmin: r%ld: " as the prefix, for clarity?
>
> Daniel
Thanks Daniel,
Currently the implementation looks like
<
$ svnadmin verify /tmp/testrepo --keep-going
* Verifying repository metadata ...
* Verified revision 0.
* Verified revision 1.
* Error verifying revision 2.
svnadmin: E160004: Final line in revision file r2 missing space
* Verified revision 3.
* Error verifying revision 4.
svnadmin: E160004: Invalid change kind in rev file
* Verified revision 5.
* Error verifying revision 6.
svnadmin: E160004: Final line in revision file r6 missing space
-----Summary of corrupt revisions-----
Revision 2
svnadmin: E160004: Final line in revision file r2 missing space
Revision 4
svnadmin: E160004: Invalid change kind in rev file
Revision 6
svnadmin: E160004: Final line in revision file r6 missing space
svnadmin: E165011: Repository '/tmp/testrepo' failed to verify
>
Do you want it to look like,
<
$ svnadmin verify /tmp/testrepo/ --keep-going
* Verifying repository metadata ...
* Verified revision 0.
* Verified revision 1.
* Error verifying revision 2.
svnadmin: E160004: Final line in revision file r2 missing space
* Verified revision 3.
* Error verifying revision 4.
svnadmin: E160004: Invalid change kind in rev file
* Verified revision 5.
* Error verifying revision 6.
svnadmin: E160004: Final line in revision file r6 missing space
-----Summary of corrupt revisions-----
Revision 2: svnadmin: E160004: Final line in revision file r2 missing space
Revision 4: svnadmin: E160004: Invalid change kind in rev file
Revision 6: svnadmin: E160004: Final line in revision file r6 missing space
Revision 6: svnadmin: E165011: Repository '/tmp/testrepo' failed to verify
>
I am ok with the second type because it needs lesser number of lines to
display the summary.
Regards
Prabhu
Re: svn commit: r1498394 - in
/subversion/branches/verify-keep-going/subversion:
libsvn_repos/dump.c svnadmin/svnadmin.c
Posted by Daniel Shahaf <da...@elego.de>.
prabhugs@apache.org wrote on Mon, Jul 01, 2013 at 12:01:38 -0000:
> /* Show the summary. */
> - if (notify_func && keep_going)
> + if (notify_func && keep_going && found_corruption)
> {
> notify_verification_summary(err, notify_func, notify_baton, iterpool);
Thanks.
> +++ subversion/branches/verify-keep-going/subversion/svnadmin/svnadmin.c Mon Jul 1 12:01:38 2013
> @@ -850,13 +850,16 @@ repos_notify_handler(void *baton,
> case svn_repos_notify_failure_summary:
> if (notify->revision != SVN_INVALID_REVNUM)
> cmdline_stream_printf(feedback_stream, scratch_pool,
> - _("r%ld: %s\n"),
> - notify->revision, notify->err->message);
> + _("\nRevision %ld \n"),
> + notify->revision);
> + if (notify->err)
> + svn_handle_error2(notify->err, stderr, FALSE /* non-fatal */,
> + "svnadmin: ");
How about using "svnadmin: r%ld: " as the prefix, for clarity?
Daniel
Re: svn commit: r1498394 - in
/subversion/branches/verify-keep-going/subversion:
libsvn_repos/dump.c svnadmin/svnadmin.c
Posted by Daniel Shahaf <da...@elego.de>.
prabhugs@apache.org wrote on Mon, Jul 01, 2013 at 12:01:38 -0000:
> /* Show the summary. */
> - if (notify_func && keep_going)
> + if (notify_func && keep_going && found_corruption)
> {
> notify_verification_summary(err, notify_func, notify_baton, iterpool);
Thanks.
> +++ subversion/branches/verify-keep-going/subversion/svnadmin/svnadmin.c Mon Jul 1 12:01:38 2013
> @@ -850,13 +850,16 @@ repos_notify_handler(void *baton,
> case svn_repos_notify_failure_summary:
> if (notify->revision != SVN_INVALID_REVNUM)
> cmdline_stream_printf(feedback_stream, scratch_pool,
> - _("r%ld: %s\n"),
> - notify->revision, notify->err->message);
> + _("\nRevision %ld \n"),
> + notify->revision);
> + if (notify->err)
> + svn_handle_error2(notify->err, stderr, FALSE /* non-fatal */,
> + "svnadmin: ");
How about using "svnadmin: r%ld: " as the prefix, for clarity?
Daniel