You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by "C. Michael Pilato" <cm...@collab.net> on 2010/09/03 05:22:28 UTC

Some overlooked single-db-isms?

Tonight I ran into a codepath which triggers and assertion.

$ svn up
subversion/libsvn_wc/wc_db.c:383: (apr_err=235000)
svn: In file 'subversion/libsvn_wc/wc_db.c' line 9823: assertion failed
(!update_stub)
Aborted

The assertion is in svn_wc__db_temp_op_set_rev_and_repos_relpath(),
asserting that, when in single-db mode, the caller didn't pass
update_stub=TRUE.  Well, tweak_entries() (in update_editor.c) ultimately
does exactly that via call to tweak_node() with parent_stub=TRUE, and that's
what caused my assertion.

There's another call to tweak_node() in do_update_cleanup() that also passes
parent_stub=TRUE.  I can only assume that, too, can trigger the assertion.
But I haven't run into it in practice myself yet.

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

Re: Some overlooked single-db-isms?

Posted by Julian Foad <ju...@wandisco.com>.
I (Julian Foad) wrote:
> Thanks for catching this.  I'll cook up a test and fix it.

Fixed in r992276, with a new test.

- Julian


> On Fri, 2010-09-03 at 01:22 -0400, C. Michael Pilato wrote:
> > Tonight I ran into a codepath which triggers and assertion.
> > 
> > $ svn up
> > subversion/libsvn_wc/wc_db.c:383: (apr_err=235000)
> > svn: In file 'subversion/libsvn_wc/wc_db.c' line 9823: assertion failed
> > (!update_stub)
> > Aborted
> > 
> > The assertion is in svn_wc__db_temp_op_set_rev_and_repos_relpath(),
> > asserting that, when in single-db mode, the caller didn't pass
> > update_stub=TRUE.  Well, tweak_entries() (in update_editor.c) ultimately
> > does exactly that via call to tweak_node() with parent_stub=TRUE, and that's
> > what caused my assertion.
> > 
> > There's another call to tweak_node() in do_update_cleanup() that also passes
> > parent_stub=TRUE.  I can only assume that, too, can trigger the assertion.
> > But I haven't run into it in practice myself yet.


Re: Some overlooked single-db-isms?

Posted by Julian Foad <ju...@wandisco.com>.
Thanks for catching this.  I'll cook up a test and fix it.

- Julian


On Fri, 2010-09-03 at 01:22 -0400, C. Michael Pilato wrote:
> Tonight I ran into a codepath which triggers and assertion.
> 
> $ svn up
> subversion/libsvn_wc/wc_db.c:383: (apr_err=235000)
> svn: In file 'subversion/libsvn_wc/wc_db.c' line 9823: assertion failed
> (!update_stub)
> Aborted
> 
> The assertion is in svn_wc__db_temp_op_set_rev_and_repos_relpath(),
> asserting that, when in single-db mode, the caller didn't pass
> update_stub=TRUE.  Well, tweak_entries() (in update_editor.c) ultimately
> does exactly that via call to tweak_node() with parent_stub=TRUE, and that's
> what caused my assertion.
> 
> There's another call to tweak_node() in do_update_cleanup() that also passes
> parent_stub=TRUE.  I can only assume that, too, can trigger the assertion.
> But I haven't run into it in practice myself yet.
>