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

Re: first 700 commits, with instrumentation

From: <kfogel_at_collab.net>
Date: 2001-08-23 18:16:16 CEST

Yoshiki Hayashi <yoshiki@xemacs.org> writes:
> | 3. The first time we see some txns aborted in commit #564. And
> | commit #563 is the first commit to encounter an fs error (the
> | out-of-memory error). All previous errors had been working copy
> | issues. So I think the txns aborted number is behaving as it
> | should; the question is, why did #563 have a problem?
>
> Could this error go away if you stop mass-commit at #562 and starting
> new commit from freshly checked out working copy? Or perhaps run svn
> update after each commit? I'm asking because in my local environment,
> if I split mass-commit to two at #550 (I get core dump at #551) and
> resume later operations with new working copy (to the same
> repository, of course), I can run all commits successfully. I kind of
> feel that trying to commit from working copy with hundreds of revision
> mixed is the cause of the problem (at least in my case). If it is
> also true in your case, you may be able to delay debugging after M3.

Possibly yes, that's a good point. But IMHO we shouldn't feel
comfortable going self-hosting with that big a problem handling
mixed-revision working copies, even though you're certainly correct
that we *could* skirt around the issue by being careful users post-M3.

The reason it would make me uncomfortable is that, theoretically,
there isn't supposed to be a huge extra load to committing from an
ancient working copy. A little more work in the svn txn building, but
that's it. An out-of-memory error is certainly not to be
expected. :-) It implies that there's a logic problem in the commit
process...

So let's fix it now, rather than ask everyone to stay up-to-date all
the time. (There's also issue #460, which Mike Pilato is working on
right now; that's another one that we could, technically, leave till
after self-hosting but is severe enough that it would be better not
to.)

> The excerpt of backtrace in my environment is attached below in case
> it might be useful.

Thanks.

> BTW, could you put compressed version of log in addition to the plain
> one the next time you upload it? I'm operating on 56K modem until I
> go back to Tokyo in September. I logged in to my computer at the
> University and gzipped it before copying it to my local computer.
> Gzipped one is only 152k while the original is 5.5M. ;-)

Sure, if put up another log will also put up compressed.

-K

> (gdb) bt
> #0 0x400ff136 in __lock_getlocker () from /usr/lib/libdb3.so.3
> #1 0x400fe989 in __lock_downgrade () from /usr/lib/libdb3.so.3
> #2 0x400fe666 in __lock_downgrade () from /usr/lib/libdb3.so.3
> #3 0x400fe256 in lock_put () from /usr/lib/libdb3.so.3
> #4 0x400fcd20 in lock_vec () from /usr/lib/libdb3.so.3
> #5 0x400d2dc8 in __db_lget () from /usr/lib/libdb3.so.3
> #6 0x400b24fb in __bam_search () from /usr/lib/libdb3.so.3
> #7 0x400a671d in __bam_c_rget () from /usr/lib/libdb3.so.3
> #8 0x400a40ec in __bam_c_dup () from /usr/lib/libdb3.so.3
> #9 0x400cbcc4 in __db_c_get () from /usr/lib/libdb3.so.3
> #10 0x400c7828 in __db_get () from /usr/lib/libdb3.so.3
> #11 0x0806eab0 in svn_fs__string_size (size=0xbfe014b8, fs=0x80b8b54,
> key=0x95263ac "c57", trail=0x80f595c)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/strings-table.c:228
> #12 0x0806e7b0 in svn_fs__string_read (fs=0x80b8b54, key=0x95263ac "c57",
> buf=0xbfe01544 "SVN", offset=0, len=0xbfe01538, trail=0x80f595c)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/strings-table.c:106
> #13 0x0807327a in rep_read_range (fs=0x80b8b54, rep_key=0x952625c "8q7",
> buf=0x957b664 "", offset=0, len=0xbfe025c8, trail=0x80f595c)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/reps-strings.c:451
> #14 0x08072fb4 in window_handler (window=0x957f6bc, baton=0xbfe03694)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/reps-strings.c:304
> #15 0x08078009 in write_handler (baton=0x9526264, buffer=0xbfe02698 "",
> len=0xbfe02688)
> at /work/yoshiki/work/subversion/subversion/libsvn_delta/svndiff.c:455
> #16 0x0807972d in svn_stream_write (stream=0x9526284, data=0xbfe02694 "SVN",
> len=0xbfe02688)
> at /work/yoshiki/work/subversion/subversion/libsvn_subr/io.c:448
> #17 0x08073298 in rep_read_range (fs=0x80b8b54, rep_key=0x9526104 "8pz",
> buf=0x95755f4 "", offset=0, len=0xbfe03718, trail=0x80f595c)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/reps-strings.c:453
> #18 0x08072fb4 in window_handler (window=0x957963c, baton=0xbfe047e4)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/reps-strings.c:304
> #19 0x08078009 in write_handler (baton=0x952610c, buffer=0xbfe037e8 "",
> len=0xbfe037d8)
> at /work/yoshiki/work/subversion/subversion/libsvn_delta/svndiff.c:455
>
> [snip]
>
> #1864 0x0807972d in svn_stream_write (stream=0x81a86e4, data=0xbfff64f4 "SVN",
> len=0xbfff64e8)
> at /work/yoshiki/work/subversion/subversion/libsvn_subr/io.c:448
> #1865 0x08073298 in rep_read_range (fs=0x80b8b54, rep_key=0x81a8564 "mu",
> buf=0x8222acc "", offset=0, len=0xbfff7578, trail=0x80f595c)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/reps-strings.c:453
> #1866 0x08072fb4 in window_handler (window=0x8250eb4, baton=0xbfff8644)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/reps-strings.c:304
> #1867 0x08078009 in write_handler (baton=0x81a856c, buffer=0xbfff7648 "",
> len=0xbfff7638)
> at /work/yoshiki/work/subversion/subversion/libsvn_delta/svndiff.c:455
> #1868 0x0807972d in svn_stream_write (stream=0x81a858c, data=0xbfff7644 "SVN",
> len=0xbfff7638)
> at /work/yoshiki/work/subversion/subversion/libsvn_subr/io.c:448
> #1869 0x08073298 in rep_read_range (fs=0x80b8b54, rep_key=0x81a840c "md",
> buf=0x81fc7ec "", offset=0, len=0xbfff86c8, trail=0x80f595c)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/reps-strings.c:453
> #1870 0x08072fb4 in window_handler (window=0x821099c, baton=0xbfff9794)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/reps-strings.c:304
> #1871 0x08078009 in write_handler (baton=0x81a8414, buffer=0xbfff8798 "",
> len=0xbfff8788)
> at /work/yoshiki/work/subversion/subversion/libsvn_delta/svndiff.c:455
> #1872 0x0807972d in svn_stream_write (stream=0x81a8434, data=0xbfff8794 "SVN",
> len=0xbfff8788)
> at /work/yoshiki/work/subversion/subversion/libsvn_subr/io.c:448
> #1873 0x08073298 in rep_read_range (fs=0x80b8b54, rep_key=0x81a82b4 "l1",
> buf=0x81dc584 "", offset=0, len=0xbfff9818, trail=0x80f595c)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/reps-strings.c:453
> #1874 0x08072fb4 in window_handler (window=0x82048ac, baton=0xbfffa8e4)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/reps-strings.c:304
> #1875 0x08078009 in write_handler (baton=0x81a82bc, buffer=0xbfff98e8 "",
> len=0xbfff98d8)
> at /work/yoshiki/work/subversion/subversion/libsvn_delta/svndiff.c:455
> #1876 0x0807972d in svn_stream_write (stream=0x81a82dc, data=0xbfff98e4 "SVN",
> len=0xbfff98d8)
> at /work/yoshiki/work/subversion/subversion/libsvn_subr/io.c:448
> #1877 0x08073298 in rep_read_range (fs=0x80b8b54, rep_key=0x81a815c "k0",
> buf=0x8183ed4 "", offset=0, len=0xbfffa968, trail=0x80f595c)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/reps-strings.c:453
> #1878 0x08072fb4 in window_handler (window=0x81ba304, baton=0xbfffba34)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/reps-strings.c:304
> #1879 0x08078009 in write_handler (baton=0x81a8164, buffer=0xbfffaa38 "",
> len=0xbfffaa28)
> at /work/yoshiki/work/subversion/subversion/libsvn_delta/svndiff.c:455
> #1880 0x0807972d in svn_stream_write (stream=0x81a8184, data=0xbfffaa34 "SVN",
> len=0xbfffaa28)
> at /work/yoshiki/work/subversion/subversion/libsvn_subr/io.c:448
> #1881 0x08073298 in rep_read_range (fs=0x80b8b54, rep_key=0x9162e1c "jj",
> buf=0x8101944 "", offset=0, len=0xbfffbab8, trail=0x80f595c)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/reps-strings.c:453
> #1882 0x08072fb4 in window_handler (window=0x819404c, baton=0xbfffcb84)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/reps-strings.c:304
> #1883 0x08078009 in write_handler (baton=0x9162e24, buffer=0xbfffbb88 "",
> len=0xbfffbb78)
> at /work/yoshiki/work/subversion/subversion/libsvn_delta/svndiff.c:455
> #1884 0x0807972d in svn_stream_write (stream=0x9162e44, data=0xbfffbb84 "SVN",
> len=0xbfffbb78)
> at /work/yoshiki/work/subversion/subversion/libsvn_subr/io.c:448
> #1885 0x08073298 in rep_read_range (fs=0x80b8b54, rep_key=0x9162abc "1",
> buf=0xbfffcc0c "T\213\013\b\326\360\017@\364\025\023@", offset=0,
> len=0xbfffcbf8, trail=0x80f595c)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/reps-strings.c:453
> #1886 0x0807358c in svn_fs__get_mutable_rep (new_rep=0xbffff374,
> rep=0x9162abc "1", fs=0x80b8b54, trail=0x80f595c)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/reps-strings.c:606
> #1887 0x0806c0ce in set_entry (parent=0x8152f9c, name=0x813703c "doc",
> id=0x916292c, trail=0x80f595c)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/dag.c:525
> #1888 0x0806cac2 in svn_fs__dag_clone_child (child_p=0xbffff3f4,
> parent=0x8152f9c, name=0x813703c "doc", trail=0x80f595c)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/dag.c:1015
> #1889 0x08070f1a in make_path_mutable (root=0x80eb894, parent_path=0x8c2cadc,
> error_path=0x80f591c "/trunk/doc/user/svnlook/svnlook.texi",
> trail=0x80f595c)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/tree.c:568
> #1890 0x08070f01 in make_path_mutable (root=0x80eb894, parent_path=0x84d4e04,
> error_path=0x80f591c "/trunk/doc/user/svnlook/svnlook.texi",
> trail=0x80f595c)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/tree.c:564
> #1891 0x08070f01 in make_path_mutable (root=0x80eb894, parent_path=0x833b074,
> error_path=0x80f591c "/trunk/doc/user/svnlook/svnlook.texi",
> trail=0x80f595c)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/tree.c:564
> #1892 0x080725cb in txn_body_copy (baton=0xbffff518, trail=0x80f595c)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/tree.c:2103
> #1893 0x0806fd64 in svn_fs__retry_txn (fs=0x80b8b54,
> txn_body=0x807251c <txn_body_copy>, baton=0xbffff518, pool=0x80f57d4)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/trail.c:123
> #1894 0x080726c1 in svn_fs_link (from_root=0x80f9904,
> from_path=0x80f591c "/trunk/doc/user/svnlook/svnlook.texi",
> to_root=0x80eb894,
> to_path=0x80f591c "/trunk/doc/user/svnlook/svnlook.texi", pool=0x80f57d4)
> at /work/yoshiki/work/subversion/subversion/libsvn_fs/tree.c:2175
> #1895 0x080690e1 in replace_file (name=0x80db83c, parent_baton=0x80f38d4,
> base_revision=456, file_baton=0x80d9598)
> at /work/yoshiki/work/subversion/subversion/libsvn_repos/commit_editor.c:435
> #1896 0x08076923 in replace_file (name=0x80db83c, parent_baton=0x80d93c4,
> base_revision=456, file_baton=0x80d9588)
> at /work/yoshiki/work/subversion/subversion/libsvn_delta/compose_editors.c:351
> #1897 0x08076923 in replace_file (name=0x80db83c, parent_baton=0x80d93b4,
> base_revision=456, file_baton=0x80d8ff8)
> at /work/yoshiki/work/subversion/subversion/libsvn_delta/compose_editors.c:351
> #1898 0x08053ac1 in report_single_mod (name=0x80d8fd4 "svnlook.texi",
> entry=0x80d8e0c, stack=0xbffff6d8, affected_targets=0x80bee7c,
> locks=0x80beedc, editor=0x80bee44, edit_baton=0x80bee2c,
> dir_baton=0xbffff6c4, adds_only=0, top_pool=0x80b031c)
> at /work/yoshiki/work/subversion/subversion/libsvn_wc/adm_crawler.c:915
> #1899 0x080543f3 in svn_wc_crawl_local_mods (parent_dir=0x80b1adc,
> condensed_targets=0x80b2164, editor=0x80bee44, edit_baton=0x80bee2c,
> pool=0x80b031c)
> at /work/yoshiki/work/subversion/subversion/libsvn_wc/adm_crawler.c:1524
> #1900 0x0804e28b in send_to_repos (before_editor=0x0, before_edit_baton=0x0,
> after_editor=0x80b160c, after_edit_baton=0x80b1604, base_dir=0x80b1adc,
> condensed_targets=0x80b2164, url=0x0, new_entry=0x0, auth_obj=0x80b088c,
> log_msg=0x80b050c, xml_dst=0x0, revision=-1, pool=0x80b031c)
> at /work/yoshiki/work/subversion/subversion/libsvn_client/commit.c:548
> #1901 0x0804e42a in svn_client_commit (before_editor=0x0,
> before_edit_baton=0x0, after_editor=0x80b160c, after_edit_baton=0x80b1604,
> auth_obj=0x80b088c, targets=0x80b051c, log_msg=0x80b050c, xml_dst=0x0,
> revision=-1, pool=0x80b031c)
> at /work/yoshiki/work/subversion/subversion/libsvn_client/commit.c:668
> #1902 0x0804cea5 in svn_cl__commit (os=0x80b0494, opt_state=0xbffff888,
> pool=0x80b031c)
> at /work/yoshiki/work/subversion/subversion/clients/cmdline/commit-cmd.c:103
> #1903 0x0804b91b in main (argc=12, argv=0xbffff934)
> at /work/yoshiki/work/subversion/subversion/clients/cmdline/main.c:352
>
>
> --
> Yoshiki Hayashi
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: dev-help@subversion.tigris.org

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:36:36 2006

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