Uploaded image for project: 'Subversion'
  1. Subversion
  2. SVN-665

svn revert out-of-memory crash

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • all
    • 0.14.0
    • src
    • None

    Description

      The only way i can reproduce this is by damaging my wc as out-lined in Bug#664.
       After that, i try svn revert, which proceeds to eat all memory before crashing.
       This is with svn r1650.
      
      0 svn% gdb ./trunk/subversion/clients/cmdline/.libs/svn
      GNU gdb 5.0nb1
      Copyright 2000 Free Software Foundation, Inc.
      GDB is free software, covered by the GNU General Public License, and you are
      welcome to change it and/or distribute copies of it under certain conditions.
      Type "show copying" to see the conditions.
      There is absolutely no warranty for GDB.  Type "show warranty" for details.
      This GDB was configured as "i386--netbsdelf"...
      (gdb) cd /cvs/svn-test/trunk/nmh
      Working directory /cvs/svn-test/trunk/nmh
       (canonically /usr/local/src/cvs/svn-test/trunk/nmh).
      (gdb) r revert . --recursive
      Starting program: /usr/local/src/svn/./trunk/subversion/clients/cmdline/.libs/sv
      n revert . --recursive
      Reverted .
      Reverted ./configure
      Reverted ./Makefile.in
      Reverted ./zotnet
      Reverted ./zotnet/Makefile.in
      Reverted ./zotnet/mf
      Reverted ./zotnet/mf/Makefile.in
      Reverted ./zotnet/mf/mf.c
      Reverted ./zotnet/mf/mf.h
      Reverted ./zotnet/mts
      Reverted ./zotnet/mts/client.c
      Reverted ./zotnet/mts/Makefile.in
      Reverted ./zotnet/mts/mts.c
      Reverted ./zotnet/mts/mts.h
      Reverted ./zotnet/bboards
      Reverted ./zotnet/bboards/Makefile.in
      Reverted ./zotnet/bboards/bboards.h
      Reverted ./zotnet/bboards/getbbent.c
      Reverted ./zotnet/tws
      Reverted ./zotnet/tws/lexstring.c
      Reverted ./zotnet/tws/dtimep.c-lexed
      Reverted ./zotnet/tws/Makefile.in
      Reverted ./zotnet/tws/dtime.c
      Reverted ./zotnet/tws/tws.h
      Reverted ./zotnet/tws/lexedit.sed
      Reverted ./zotnet/tws/dtimep.lex
      Reverted ./VERSION
      Reverted ./ChangeLog_MH-6.7.0_to_MH-6.8.4.html
      Reverted ./sbr
      Reverted ./sbr/Makefile.in
      Reverted ./sbr/m_scratch.c
      Reverted ./sbr/strcasecmp.c
      Reverted ./sbr/print_sw.c
      Reverted ./sbr/folder_read.c
      Reverted ./sbr/seq_save.c
      Reverted ./sbr/seq_getnum.c
      Reverted ./sbr/atooi.c
      Reverted ./sbr/seq_del.c
      Reverted ./sbr/m_msgdef.c
      Reverted ./sbr/m_getfld.c
      Reverted ./sbr/strerror.c
      Reverted ./sbr/ruserpass.c
      Reverted ./sbr/ambigsw.c
      Reverted ./sbr/error.c
      Reverted ./sbr/m_maildir.c
      Reverted ./sbr/getanswer.c
      Reverted ./sbr/fmt_new.c
      Reverted ./sbr/seq_add.c
      Reverted ./sbr/print_version.c
      Reverted ./sbr/copyip.c
      Reverted ./sbr/seq_print.c
      Reverted ./sbr/seq_bits.c
      Reverted ./sbr/copy.c
      Reverted ./sbr/cpydgst.c
      Reverted ./sbr/ssequal.c
      Reverted ./sbr/push.c
      Reverted ./sbr/fmt_addr.c
      Reverted ./sbr/pidstatus.c
      Reverted ./sbr/addrsbr.c
      Reverted ./sbr/strdup.c
      Reverted ./sbr/getans.c
      Reverted ./sbr/seq_read.c
      Reverted ./sbr/cpydata.c
      Reverted ./sbr/lock_file.c
      Reverted ./sbr/trimcpy.c
      Reverted ./sbr/folder_delmsgs.c
      Reverted ./sbr/pwd.c
      Reverted ./sbr/folder_addmsg.c
      Reverted ./sbr/m_name.c
      Reverted ./sbr/fmt_rfc2047.c
      Reverted ./sbr/fmt_compile.c
      Reverted ./sbr/vfgets.c
      Reverted ./sbr/snprintb.c
      Reverted ./sbr/seq_setprev.c
      Reverted ./sbr/strindex.c
      Reverted ./sbr/readconfig.c
      Reverted ./sbr/closefds.c
      Reverted ./sbr/context_save.c
      Reverted ./sbr/snprintf.c
      Reverted ./sbr/fmt_def.c
      Reverted ./sbr/brkstring.c
      Reverted ./sbr/getarguments.c
      Reverted ./sbr/refile.c
      Reverted ./sbr/concat.c
      Reverted ./sbr/context_del.c
      Reverted ./sbr/folder_pack.c
      Reverted ./sbr/getfolder.c
      Reverted ./sbr/folder_realloc.c
      Reverted ./sbr/m_draft.c
      Reverted ./sbr/makedir.c
      Reverted ./sbr/r1bindex.c
      Reverted ./sbr/folder_free.c
      Reverted ./sbr/seq_setcur.c
      Reverted ./sbr/context_replace.c
      Reverted ./sbr/seq_setunseen.c
      Reverted ./sbr/remdir.c
      Reverted ./sbr/seq_list.c
      Reverted ./sbr/context_find.c
      Reverted ./sbr/m_gmprot.c
      Reverted ./sbr/peekc.c
      Reverted ./sbr/gans.c
      Reverted ./sbr/fmt_scan.c
      Reverted ./sbr/m_convert.c
      Reverted ./sbr/signals.c
      Reverted ./sbr/fdcompare.c
      Reverted ./sbr/pidwait.c
      Reverted ./sbr/print_help.c
      Reverted ./sbr/m_tmpfil.c
      Reverted ./sbr/m_atoi.c
      Reverted ./sbr/discard.c
      Reverted ./sbr/uprf.c
      Reverted ./sbr/smatch.c
      Reverted ./sbr/context_read.c
      Reverted ./sbr/showfile.c
      Reverted ./sbr/putenv.c
      Reverted ./sbr/m_backup.c
      Reverted ./sbr/seq_nameok.c
      Reverted ./sbr/done.c
      Reverted ./sbr/check_charset.c
      Reverted ./sbr/add.c
      Reverted ./sbr/sigmsg.awk
      Reverted ./sbr/getcpy.c
      Reverted ./sbr/path.c
      Reverted ./sbr/context_foil.c
      Reverted ./MACHINES
      Reverted ./config.guess
      Reverted ./config.sub
      Reverted ./mts
      Reverted ./mts/Makefile.in
      Reverted ./mts/mmdf
      Reverted ./mts/mmdf/hosts.c
      Reverted ./mts/mmdf/Makefile.in
      Reverted ./mts/smtp
      Reverted ./mts/smtp/hosts.c
      Reverted ./mts/smtp/Makefile.in
      Reverted ./mts/smtp/smtp.c
      Reverted ./mts/smtp/smtp.h
      Reverted ./mts/sendmail
      Reverted ./mts/sendmail/hosts.c
      Reverted ./mts/sendmail/Makefile.in
      Reverted ./mts/sendmail/sendmail.c
      Reverted ./MAIL.FILTERING
      Reverted ./README.developers
      Reverted ./INSTALL
      Reverted ./COPYRIGHT
      Reverted ./COMPLETION-TCSH
      Reverted ./man
      Reverted ./man/ali.man
      Reverted ./man/mhshow.man
      Reverted ./man/refile.man
      Reverted ./man/rcvstore.man
      Reverted ./man/install-mh.man
      Reverted ./man/Makefile.in
      Reverted ./man/prompter.man
      Reverted ./man/inc.man
      Reverted ./man/whom.man
      Reverted ./man/msgchk.man
      Reverted ./man/fmtdump.man
      Reverted ./man/forw.man
      Reverted ./man/next.man
      Reverted ./man/rcvdist.man
      Reverted ./man/show.man
      Reverted ./man/mhl.man
      Reverted ./man/mhstore.man
      Reverted ./man/flist.man
      Reverted ./man/mhn.man
      Reverted ./man/mhbuild.man
      Reverted ./man/packf.man
      Reverted ./man/pick.man
      Reverted ./man/send.man
      Reverted ./man/mark.man
      Reverted ./man/anno.man
      Reverted ./man/mh-tailor.man
      Reverted ./man/mhlist.man
      Reverted ./man/conflict.man
      Reverted ./man/mh-draft.man
      Reverted ./man/mh-chart.man
      Reverted ./man/dist.man
      Reverted ./man/dp.man
      Reverted ./man/sortm.man
      Reverted ./man/mh-mts.man
      Reverted ./man/tmac.h.in
      Reverted ./man/mhmail.man
      Reverted ./man/mh-sequence.man
      Reverted ./man/folder.man
      Reverted ./man/sendfiles.man
      Reverted ./man/prev.man
      Reverted ./man/slocal.man
      Reverted ./man/mhpath.man
      Reverted ./man/nmh.man
      Reverted ./man/scan.man
      Reverted ./man/rmf.man
      Reverted ./man/mh-mail.man
      Reverted ./man/mhparam.man
      Reverted ./man/post.man
      Reverted ./man/msh.man
      Reverted ./man/whatnow.man
      Reverted ./man/rcvpack.man
      Reverted ./man/vmh.man
      Reverted ./man/mh-format.man
      Reverted ./man/rmm.man
      Reverted ./man/mh-alias.man
      Reverted ./man/rcvtty.man
      Reverted ./man/comp.man
      Reverted ./man/burst.man
      Reverted ./man/ap.man
      Reverted ./man/mh-profile.man
      Reverted ./man/repl.man
      Reverted ./DIFFERENCES
      Reverted ./stamp-h.in
      Reverted ./mkinstalldirs
      Reverted ./configure.in
      Reverted ./ChangeLog
      Reverted ./h
      Reverted ./h/fmt_scan.h
      Reverted ./h/scansbr.h
      Reverted ./h/netdb.h
      Reverted ./h/Makefile.in
      Reverted ./h/picksbr.h
      Reverted ./h/rcvmail.h
      Reverted ./h/fmt_compile.h
      Reverted ./h/mhcachesbr.h
      Reverted ./h/mhparse.h
      Reverted ./h/signals.h
      Reverted ./h/vmhsbr.h
      Reverted ./h/mh.h
      Reverted ./h/popsbr.h
      Reverted ./h/dropsbr.h
      Reverted ./h/aliasbr.h
      Reverted ./h/nntp.h
      Reverted ./h/addrsbr.h
      Reverted ./h/nmh.h
      Reverted ./h/md5.h
      Reverted ./h/msh.h
      Reverted ./h/mime.h
      Reverted ./h/prototypes.h
      Reverted ./uip
      Reverted ./uip/whatnowsbr.c
      Reverted ./uip/mshcmds.c
      Reverted ./uip/ap.c
      Reverted ./uip/Makefile.in
      Reverted ./uip/mhoutsbr.c
      Reverted ./uip/mhshow.c
      Reverted ./uip/mhfree.c
      Reverted ./uip/rcvstore.c
      Reverted ./uip/prompter.c
      Reverted ./uip/inc.c
      Reverted ./uip/whatnowproc.c
      Reverted ./uip/dropsbr.c
      Reverted ./uip/fmtdump.c
      Reverted ./uip/msgchk.c
      Reverted ./uip/rcvdist.c
      Reverted ./uip/termsbr.c
      Reverted ./uip/mhl.c
      Reverted ./uip/flist.c
      Reverted ./uip/mhstore.c
      Reverted ./uip/mhn.c
      Reverted ./uip/packf.c
      Reverted ./uip/md5.c
      Reverted ./uip/send.c
      Reverted ./uip/mark.c
      Reverted ./uip/scansbr.c
      Reverted ./uip/anno.c
      Reverted ./uip/mhcachesbr.c
      Reverted ./uip/vmhsbr.c
      Reverted ./uip/annosbr.c
      Reverted ./uip/dp.c
      Reverted ./uip/dist.c
      Reverted ./uip/mhmail.c
      Reverted ./uip/distsbr.c
      Reverted ./uip/folder.c
      Reverted ./uip/slocal.c
      Reverted ./uip/mhmisc.c
      Reverted ./uip/mhpath.c
      Reverted ./uip/scan.c
      Reverted ./uip/post.c
      Reverted ./uip/msh.c
      Reverted ./uip/rcvpack.c
      Reverted ./uip/rmm.c
      Reverted ./uip/mhbuildsbr.c
      Reverted ./uip/comp.c
      Reverted ./uip/burst.c
      Reverted ./uip/mhparse.c
      Reverted ./uip/repl.c
      Reverted ./uip/ali.c
      Reverted ./uip/refile.c
      Reverted ./uip/popi.c
      Reverted ./uip/mhlistsbr.c
      Reverted ./uip/install-mh.c
      Reverted ./uip/whom.c
      Reverted ./uip/mhshowsbr.c
      Reverted ./uip/forw.c
      Reverted ./uip/aliasbr.c
      Reverted ./uip/show.c
      Reverted ./uip/viamail.c
      Reverted ./uip/mhbuild.c
      Reverted ./uip/pick.c
      Reverted ./uip/mhstoresbr.c
      Reverted ./uip/vmhtest.c
      Reverted ./uip/mhlist.c
      Reverted ./uip/sendsbr.c
      Reverted ./uip/ftpsbr.c
      Reverted ./uip/conflict.c
      Reverted ./uip/sortm.c
      Reverted ./uip/mhtest.c
      Reverted ./uip/popsbr.c
      Reverted ./uip/spost.c
      Reverted ./uip/replsbr.c
      Reverted ./uip/rmf.c
      Reverted ./uip/mhparam.c
      Reverted ./uip/mhlsbr.c
      Reverted ./uip/whatnow.c
      Reverted ./uip/vmh.c
      Reverted ./uip/rcvtty.c
      Reverted ./uip/wmh.c
      
      Program received signal SIGABRT, Aborted.
      0x482a9807 in kill () at /usr/src/lib/csu/i386_elf/../common_elf/crtbegin.c:165
      165     }
      (gdb) bt
      #0  0x482a9807 in kill ()
          at /usr/src/lib/csu/i386_elf/../common_elf/crtbegin.c:165
      #1  0x482a9154 in abort () at /usr/src/lib/libc/stdlib/abort.c:78
      #2  0x481a85e0 in abort_on_pool_failure (retcode=12)
          at /usr/local/src/svn/trunk/subversion/libsvn_subr/svn_error.c:124
      #3  0x481f675b in apr_palloc (pool=0x805e010, size=16) at apr_pools.c:562
      #4  0x481a921d in create_stringbuf (data=0x1004aff0 "epg", size=3,
          pool=0x805e010)
          at /usr/local/src/svn/trunk/subversion/libsvn_subr/svn_string.c:238
      #5  0x481a92b8 in svn_stringbuf_ncreate (bytes=0x807a099 "", size=3,
          pool=0x805e010)
          at /usr/local/src/svn/trunk/subversion/libsvn_subr/svn_string.c:263
      #6  0x481a9301 in svn_stringbuf_create (cstring=0x807a099 "", pool=0x805e010)
          at /usr/local/src/svn/trunk/subversion/libsvn_subr/svn_string.c:270
      #7  0x481aae22 in amalgamate (atts=0x8069024, ht=0x1004ae20, preserve=0,
          pool=0x805e010)
          at /usr/local/src/svn/trunk/subversion/libsvn_subr/xml.c:379
      #8  0x481aaf26 in svn_xml_make_att_hash (atts=0x8069000, pool=0x805e010)
          at /usr/local/src/svn/trunk/subversion/libsvn_subr/xml.c:405
      #9  0x4808a6e7 in handle_start_tag (userData=0x10041670, tagname=0x807a008 "",
          atts=0x8069000)
          at /usr/local/src/svn/trunk/subversion/libsvn_wc/entries.c:389
      #10 0x481bdddc in doContent (parser=0x8062200, startTagLevel=0,
          enc=0x481d9f60, s=0x807a800 "", end=0x807acca "", nextPtr=0x806220c)
      ---Type <return> to continue, or q <return> to quit---
          at /usr/local/src/svn/trunk/expat-lite/xmlparse.c:1299
      #11 0x481bd0a4 in contentProcessor (parser=0x8062200, start=0x807a800 "",
          end=0x807acca "", endPtr=0x806220c)
          at /usr/local/src/svn/trunk/expat-lite/xmlparse.c:955
      #12 0x481bcbe0 in XML_ParseBuffer (parser=0x8062200, len=1024, isFinal=0)
          at /usr/local/src/svn/trunk/expat-lite/xmlparse.c:819
      #13 0x481bcb4d in XML_Parse (parser=0x8062200,
          s=0xbfbfcc2c "18000)\"\n   last-author=\"epg\"\n   kind=\"file\"\n  
      prop-time=\"Mon 8 Apr 2002 15:36:33.000000 (day 098, dst 0, gmt_off
      -18000)\"/>\n<entry\n   committed-rev=\"6\"\n   name=\"scan.c\"\n  
      text-time=\"Mon 8 Apr 2002 1"..., len=1024, isFinal=0) at
      /usr/local/src/svn/trunk/expat-lite/xmlparse.c:809
      #14 0x481aab7a in svn_xml_parse (svn_parser=0x100430e0,
          buf=0xbfbfcc2c "18000)\"\n   last-author=\"epg\"\n   kind=\"file\"\n  
      prop-time=\"Mon 8 Apr 2002 15:36:33.000000 (day 098, dst 0, gmt_off
      -18000)\"/>\n<entry\n   committed-rev=\"6\"\n   name=\"scan.c\"\n  
      text-time=\"Mon 8 Apr 2002 1"..., len=1024, is_final=0)
          at /usr/local/src/svn/trunk/subversion/libsvn_subr/xml.c:273
      #15 0x4808ab15 in read_entries (entries=0x100415a8, path=0x10041480,
          pool=0x805e010)
          at /usr/local/src/svn/trunk/subversion/libsvn_wc/entries.c:539
      #16 0x4808aee0 in svn_wc_entries_read (entries=0xbfbfd0a4, path=0x10041480,
          pool=0x805e010)
          at /usr/local/src/svn/trunk/subversion/libsvn_wc/entries.c:746
      #17 0x4808ad2c in svn_wc_entry (entry=0xbfbfd0dc, path=0x10041480,
      ---Type <return> to continue, or q <return> to quit---
          pool=0x805e010)
          at /usr/local/src/svn/trunk/subversion/libsvn_wc/entries.c:589
      #18 0x48098d59 in svn_wc_is_wc_root (wc_root=0xbfbfd148, path=0xda826a8,
          pool=0x805e010)
          at /usr/local/src/svn/trunk/subversion/libsvn_wc/update_editor.c:1838
      #19 0x48086d60 in svn_wc_revert (path=0xda826a8, recursive=1,
          notify_func=0x804b518 <svn_cl__notify_func>, notify_baton=0x805e260,
          pool=0x805e010)
          at /usr/local/src/svn/trunk/subversion/libsvn_wc/adm_ops.c:985
      #20 0x480871da in svn_wc_revert (path=0x8093270, recursive=1,
          notify_func=0x804b518 <svn_cl__notify_func>, notify_baton=0x805e260,
          pool=0x805e010)
          at /usr/local/src/svn/trunk/subversion/libsvn_wc/adm_ops.c:1105
      #21 0x480871da in svn_wc_revert (path=0x805e248, recursive=1,
          notify_func=0x804b518 <svn_cl__notify_func>, notify_baton=0x805e260,
          pool=0x805e010)
          at /usr/local/src/svn/trunk/subversion/libsvn_wc/adm_ops.c:1105
      #22 0x480767d7 in svn_client_revert (path=0x805e248, recursive=1,
          notify_func=0x804b518 <svn_cl__notify_func>, notify_baton=0x805e260,
          pool=0x805e010)
          at /usr/local/src/svn/trunk/subversion/libsvn_client/revert.c:44
      #23 0x804e888 in svn_cl__revert (os=0x805e128, opt_state=0xbfbfd3dc,
          pool=0x805e010)
          at /usr/local/src/svn/trunk/subversion/clients/cmdline/revert-cmd.c:54
      ---Type <return> to continue, or q <return> to quit---
      #24 0x804d45e in main (argc=4, argv=0xbfbfd4cc)
          at /usr/local/src/svn/trunk/subversion/clients/cmdline/main.c:1064
      #25 0x804a5f0 in ___start (argc=4, argv=0xbfbfd4cc, envp=0xbfbfd4e0,
          cleanup=0x48057c08 <_rtld_exit>, obj=0x48063200, ps_strings=0xbfbfdff0)
          at /usr/src/lib/csu/i386_elf/crt0.c:94
      

      Original issue reported by epg

      Attachments

        Activity

          People

            Unassigned Unassigned
            subversion-importer Subversion Importer
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: