From users-return-21618-apmail-subversion-users-archive=subversion.apache.org@subversion.apache.org Mon Jun 23 05:29:12 2014 Return-Path: X-Original-To: apmail-subversion-users-archive@minotaur.apache.org Delivered-To: apmail-subversion-users-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id AB79D1169D for ; Mon, 23 Jun 2014 05:29:12 +0000 (UTC) Received: (qmail 68065 invoked by uid 500); 23 Jun 2014 05:29:11 -0000 Delivered-To: apmail-subversion-users-archive@subversion.apache.org Received: (qmail 68032 invoked by uid 500); 23 Jun 2014 05:29:11 -0000 Mailing-List: contact users-help@subversion.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list users@subversion.apache.org Delivered-To: moderator for users@subversion.apache.org Received: (qmail 8127 invoked by uid 99); 20 Jun 2014 18:41:27 -0000 X-ASF-Spam-Status: No, hits=0.0 required=5.0 tests=RCVD_IN_DNSWL_NONE,SPF_PASS,T_FSL_HELO_BARE_IP_2 X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of dichlofos-mv@yandex.ru designates 37.140.138.4 as permitted sender) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1403289657; bh=yM7W40cy5A+7tJk36McuvkHaE8T3sPhvJLHRxs2caW0=; h=From:To:Subject:Date; b=BhCVTEKFBRKJcyuo/kez1Qna3yzzk/Nu6mK2W1qGBWhpKeKVbw/q/xtdEtBLMnG9Y MQNoDehDqsujVOCdBxMM9cmpd4yavIDUfjNt1RssLVK8dj2e38dpl8QFzgU2G/6WRV Zoe+hN0bVXogYHV0641t7NBCoK0jj5gGCfeNHIiE= From: Mikhail Veltishchev To: users@subversion.apache.org Subject: assertion failed / segfault in svn_ra_do_diff3 MIME-Version: 1.0 Message-Id: <3817351403289657@web5m.yandex.ru> X-Mailer: Yamail [ http://yandex.ru ] 5.0 Date: Fri, 20 Jun 2014 22:40:57 +0400 Content-Transfer-Encoding: 7bit Content-Type: text/plain X-Virus-Checked: Checked by ClamAV on apache.org I recently caught a segfault / assertion fail in svn client. svn, version 1.8.5 (r1542147) compiled Dec 2 2013, 21:40:18 on x86_64-unknown-linux-gnu (built from sources on Ubuntu 12.04 LTS) It was a reproducible segfault at command something like that svn up -r XXXXXXX .. Here is a backtrace, all coredumps are saved for future analysis. 0x00007f58656ee425 in raise () from /lib/x86_64-linux-gnu/libc.so.6 #1 0x00007f58656f1b8b in abort () from /lib/x86_64-linux-gnu/libc.so.6 #2 0x00007f5865efcabe in svn_error_abort_on_malfunction (can_return=, file=, line=, expr=) at subversion/libsvn_subr/error.c:722 #3 0x00007f58665f6cdd in svn_ra_do_diff3 (session=0x1c83770, reporter=0x7fff6cc76f48, report_baton=0x7fff6cc76f98, revision=1403046, diff_target=, depth=, ignore_ancestry=1, text_deltas=1, versus _url=0x1bf41e8 "svn+ssh://arcadia.yandex.ru/arc/trunk/arcadia/yweb/robot/queuer", diff_editor=0x1bf48c8, diff_baton=0x1bf4948, pool=0x1bf3228) at subversion/libsvn_ra/ra_loader.c:870 #4 0x00007f5866ad0d73 in diff_repos_wc (path_or_url1=path_or_url1@entry=0x1c41b10 "..", revision1=revision1@entry=0x7fff6cc77568, peg_revision=peg_revision@entry=0x7fff6cc773b0, path2=path2@entry=0x1c41b10 "..", reverse=rever se@entry=0, depth=depth@entry=svn_depth_unknown, ignore_ancestry=ignore_ancestry@entry=1, show_copies_as_adds=show_copies_as_adds@entry=0, use_git_diff_format=use_git_diff_format@entry=0, changelists=changelists@entry=0x1bed79 0, callbacks=callbacks@entry=0x7f5866d0acc0 , callback_baton=callback_baton@entry=0x7fff6cc77190, cmd_baton=cmd_baton@entry=0x7fff6cc77190, ctx=ctx@entry=0x1bee980, scratch_pool=scratch_pool@entry=0x1bf3228, re vision2=0x7fff6cc77578) at subversion/libsvn_client/diff.c:2027 #5 0x00007f5866ad22d5 in do_diff (callback_baton=callback_baton@entry=0x7fff6cc77190, ctx=ctx@entry=0x1bee980, path_or_url1=path_or_url1@entry=0x1c41b10 "..", path_or_url2=path_or_url2@entry=0x1c41b10 "..", revision1=revision 1@entry=0x7fff6cc77568, revision2=revision2@entry=0x7fff6cc77578, peg_revision=peg_revision@entry=0x7fff6cc773b0, depth=depth@entry=svn_depth_unknown, ignore_ancestry=ignore_ancestry@entry=1, show_copies_as_adds=show_copies_as _adds@entry=0, use_git_diff_format=use_git_diff_format@entry=0, changelists=changelists@entry=0x1bed790, pool=pool@entry=0x1bf3228, callbacks=0x7f5866d0acc0 ) at subversion/libsvn_client/diff.c:2090 #6 0x00007f5866ad3b9a in svn_client_diff_peg6 (options=options@entry=0x0, path_or_url=0x1c41b10 "..", peg_revision=peg_revision@entry=0x7fff6cc773b0, start_revision=start_revision@entry=0x7fff6cc77568, end_revision=end_revisi on@entry=0x7fff6cc77578, relative_to_dir=relative_to_dir@entry=0x0, depth=svn_depth_unknown, ignore_ancestry=1, no_diff_added=0, no_diff_deleted=0, show_copies_as_adds=show_copies_as_adds@entry=0, ignore_content_type=0, ignore _properties=ignore_properties@entry=0, properties_only=0, use_git_diff_format=0, header_encoding=0x1 , outstream=outstream@entry=0x1c418d0, errstream=errstream@entry=0x1c419a0, chang elists=0x1bed790, ctx=ctx@entry=0x1bee980, pool=pool@entry=0x1bf3228) at subversion/libsvn_client/diff.c:2677 #7 0x000000000040bc59 in svn_cl__diff (os=, baton=, pool=0x1bed1f8) at subversion/svn/diff-cmd.c:441 #8 0x000000000041ad13 in sub_main (argc=argc@entry=5, argv=argv@entry=0x7fff6cc77878, pool=pool@entry=0x1bed1f8) at subversion/svn/svn.c:2878 #9 0x0000000000406c5d in main (argc=5, argv=0x7fff6cc77878) at subversion/svn/svn.c:2969 Here is an locals info for svn_ra_do_diff3 call: #4 0x00007f5866ad0d73 in diff_repos_wc (path_or_url1=path_or_url1@entry=0x1c41b10 "..", revision1=revision1@entry=0x7fff6cc77568, peg_revision=peg_revision@entry=0x7fff6cc773b0, path2=path2@entry=0x1c41b10 "..", reverse=rever se@entry=0, depth=depth@entry=svn_depth_unknown, ignore_ancestry=ignore_ancestry@entry=1, show_copies_as_adds=show_copies_as_adds@entry=0, use_git_diff_format=use_git_diff_format@entry=0, changelists=changelists@entry=0x1bed79 0, callbacks=callbacks@entry=0x7f5866d0acc0 , callback_baton=callback_baton@entry=0x7fff6cc77190, cmd_baton=cmd_baton@entry=0x7fff6cc77190, ctx=ctx@entry=0x1bee980, scratch_pool=scratch_pool@entry=0x1bf3228, re vision2=0x7fff6cc77578) at subversion/libsvn_client/diff.c:2027 (gdb) info locals svn_err__temp = url1 = 0x1bf41e8 "svn+ssh://arcadia.yandex.ru/arc/trunk/arcadia/yweb/robot/queuer" anchor = 0x1bf3cd8 "" anchor_url = 0x1bf40d8 "svn+ssh://arcadia.yandex.ru/arc/trunk/arcadia/yweb/robot/queuer/dumpdups" target = 0x1bf3ce0 ".." rev = 1403046 ra_session = 0x1c83770 diff_depth = svn_depth_unknown reporter = reporter_baton = diff_editor = 0x1bf48c8 diff_edit_baton = 0x1bf4948 rev2_is_base = 0 server_supports_depth = 1 abspath_or_url1 = 0x1bf3420 "/fasthd/mvel/trunk/arcadia/yweb/robot/queuer" abspath2 = 0x1bf3ac8 "/fasthd/mvel/trunk/arcadia/yweb/robot/queuer" anchor_abspath = 0x1bf3e18 "/fasthd/mvel/trunk/arcadia/yweb/robot/queuer/dumpdups" kind1 = svn_node_dir kind2 = svn_node_dir is_copy = 0 cf_revision = cf_repos_relpath = cf_repos_root_url = pool = 0x1bf3228 ... and from next stack: svn_err__temp = 0 others are optimized out. After repo updating this crash disappeared. Before that crash I updated 'arcadia/yweb/robot/queuer' subtree to different revision (1403046) a couple of times and rolled it back to 1403047. -- Best regards, Mikhail Veltishchev [Software Dev @ Yandex] mailto:dichlofos-mv@yandex.ru