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

1.6 blocker? copy operation during update fails

From: Stefan Sperling <stsp_at_elego.de>
Date: Tue, 6 Jan 2009 14:04:16 +0100

Hello,

while working on documentation for tree conflicts in the svnbook,
I think I found a 1.6 blocker.

If you run the attached script with current trunk, svn bails out
and leaves the working copy in locked state.

The problem occurs when an update pulls down both a move and a
textual diff for a file in one go.

This is what I'm seeing:

  + svn update recipe/trunk2
     C recipe/trunk2/alpha
  Conflict discovered in 'recipe/trunk2/alpha.moved'.
  Select: (p) postpone, (df) diff-full, (e) edit,
          (mc) mine-conflict, (tc) theirs-conflict,
          (s) show all options: p
  C recipe/trunk2/alpha.moved
  subversion/libsvn_wc/log.c:625: (apr_err=155009)
  svn: In directory 'recipe/trunk2'
  subversion/libsvn_subr/io.c:2637: (apr_err=2)
  svn: Can't open file 'recipe/trunk2/alpha.moved': No such file or directory
  $ svn st recipe/trunk2
  ! L recipe/trunk2
  ? recipe/trunk2/alpha.moved.copied
  ? recipe/trunk2/alpha.moved.r3
  ? recipe/trunk2/alpha.moved.mine
  A + C recipe/trunk2/alpha
> local edit, incoming delete upon update
  $ ls -1 recipe/trunk2/
  alpha
  alpha.moved.copied
  alpha.moved.mine
  alpha.moved.r3
  
Backtrace from where the error is thrown:

  #0 svn_io_file_open (new_file=0xcfbc9ad4, fname=0x85eba050 "recipe/trunk2/alpha.moved", flag=33, perm=4095,
      pool=0x85eba018) at subversion/libsvn_subr/io.c:2637
  #1 0x1c10c7b6 in svn_io_copy_file (src=0x85eba050 "recipe/trunk2/alpha.moved",
      dst=0x85eba070 "recipe/trunk2/alpha.moved.mine", copy_perms=0, pool=0x85eba018)
      at subversion/libsvn_subr/io.c:675
  #2 0x1c1202d3 in svn_subst_copy_and_translate3 (src=0x85eba050 "recipe/trunk2/alpha.moved",
      dst=0x85eba070 "recipe/trunk2/alpha.moved.mine", eol_str=0x0, repair=1, keywords=0x0, expand=1, special=0,
      pool=0x85eba018) at subversion/libsvn_subr/subst.c:1524
  #3 0x1c05d8bc in file_xfer_under_path (adm_access=0x85d591b0, name=0x89b4f02a "alpha.moved",
      dest=0x89b4f019 "alpha.moved.mine", versioned=0x89b4f036 "alpha.moved",
      action=svn_wc__xfer_cp_and_translate, rerun=0, pool=0x85eba018) at subversion/libsvn_wc/log.c:314
  #4 0x1c05dff8 in log_do_file_xfer (loggy=0x8ad69138, name=0x89b4f02a "alpha.moved",
      action=svn_wc__xfer_cp_and_translate, atts=0x85975200) at subversion/libsvn_wc/log.c:622
  #5 0x1c05ff2f in start_handler (userData=0x8ad69138, eltname=0x89b4f008 "cp-and-translate", atts=0x85975200)
      at subversion/libsvn_wc/log.c:1599
  #6 0x1c125067 in expat_start_handler (userData=0x81ed6050, name=0x89b4f008 "cp-and-translate", atts=0x85975200)
      at subversion/libsvn_subr/xml.c:316
  #7 0x0db2637e in doContent (parser=0x86515600, startTagLevel=0, enc=0x2db272c0,
      s=0x874abb0f "<cp-and-translate\n dest=\"alpha.moved.mine\"\n name=\"alpha.moved\"\n arg2=\"alpha.moved\"/>\n<modify-entry\n name=\"alpha.moved\"\n conflict-wrk=\"alpha.moved.mine\"\n conflict-new=\"alpha.moved.r3\"\n co"..., end=0x874abe7f "", nextPtr=0x86515618, haveMore=1 '\001')
      at /usr/src/lib/libexpat/lib/xmlparse.c:2392
  #8 0x0db25b15 in contentProcessor (parser=0x86515600,
      start=0x874ab834 "<modify-entry\n name=\"alpha.moved\"\n present-props=\"\"\n cachable-props=\"svn:special svn:externals svn:needs-lock\"\n has-prop-mods=\"false\"\n has-props=\"false\"/>\n<modify-entry\n committed-rev=\"3\"\n"..., end=0x874abe7f "", endPtr=0x86515618) at /usr/src/lib/libexpat/lib/xmlparse.c:2028
  #9 0x0db253e9 in XML_ParseBuffer (parser=0x86515600, len=1611, isFinal=0)
      at /usr/src/lib/libexpat/lib/xmlparse.c:1577
  #10 0x0db25358 in XML_Parse (parser=0x86515600,
      s=0x898ce018 "<modify-entry\n name=\"alpha.moved\"\n present-props=\"\"\n cachable-props=\"svn:special svn:externals svn:needs-lock\"\n has-prop-mods=\"false\"\n has-props=\"false\"/>\n<modify-entry\n committed-rev=\"3\"\n"..., len=1611, isFinal=0) at /usr/src/lib/libexpat/lib/xmlparse.c:1548
  #11 0x1c1251f9 in svn_xml_parse (svn_parser=0x81ed6050,
      buf=0x898ce018 "<modify-entry\n name=\"alpha.moved\"\n present-props=\"\"\n cachable-props=\"svn:special svn:externals svn:needs-lock\"\n has-prop-mods=\"false\"\n has-props=\"false\"/>\n<modify-entry\n committed-rev=\"3\"\n"..., len=1611, is_final=0) at subversion/libsvn_subr/xml.c:398
  #12 0x1c06085c in run_log (adm_access=0x85d591b0, rerun=0, diff3_cmd=0x0, pool=0x8ad69018)
      at subversion/libsvn_wc/log.c:1846
  #13 0x1c060b3d in svn_wc__run_log (adm_access=0x85d591b0, diff3_cmd=0x0, pool=0x8ad69018)
      at subversion/libsvn_wc/log.c:1923
  #14 0x1c072571 in close_directory (dir_baton=0x86a72728, pool=0x85d59018)
      at subversion/libsvn_wc/update_editor.c:2546
  #15 0x1c0774f3 in close_directory (dir_baton=0x86a72700, pool=0x85d59018)
      at subversion/libsvn_wc/ambient_depth_filter_editor.c:478
  #16 0x1c0fd97c in close_directory (dir_baton=0x86a726f8, pool=0x85d59018)
      at subversion/libsvn_delta/cancel.c:256
  #17 0x1c0fd97c in close_directory (dir_baton=0x86a726f0, pool=0x85d59018)
      at subversion/libsvn_delta/cancel.c:256
  #18 0x1c0c0966 in drive (b=0x7cab5910, s_rev=1, info=0x7cab6b68, pool=0x85d59018)
      at subversion/libsvn_repos/reporter.c:1186
  #19 0x1c0c0bf1 in finish_report (b=0x7cab5910, pool=0x85d59018) at subversion/libsvn_repos/reporter.c:1245
  #20 0x1c0c0ee0 in svn_repos_finish_report (baton=0x7cab5910, pool=0x85d59018)
      at subversion/libsvn_repos/reporter.c:1335
  #21 0x1c0b5133 in reporter_finish_report (reporter_baton=0x7cab6b10, pool=0x85d59018)
      at subversion/libsvn_ra_local/ra_plugin.c:207
  #22 0x1c0492f5 in svn_wc_crawl_revisions4 (path=0x7e668828 "recipe/trunk2", adm_access=0x85d591b0,
      reporter=0x3c0278a8, report_baton=0x7cab6b10, restore_files=1, depth=svn_depth_unknown,
      honor_depth_exclude=1, depth_compatibility_trick=0, use_commit_times=0, notify_func=0x1c011c5a <notify>,
      notify_baton=0x7e668838, traversal_info=0x85d59050, pool=0x85d59018)
      at subversion/libsvn_wc/adm_crawler.c:711
  #23 0x1c04425c in svn_client__update_internal (result_rev=0xcfbca25c, path=0x7e668828 "recipe/trunk2",
      revision=0xcfbca3c4, depth=svn_depth_unknown, depth_is_sticky=0, ignore_externals=0,
      allow_unver_obstructions=0, timestamp_sleep=0xcfbca260, send_copyfrom_args=1, ctx=0x7f99f7b0,
      pool=0x85d59018) at subversion/libsvn_client/update.c:254
  #24 0x1c044476 in svn_client_update3 (result_revs=0x0, paths=0x7e668738, revision=0xcfbca3c4,
      depth=svn_depth_unknown, depth_is_sticky=0, ignore_externals=0, allow_unver_obstructions=0, ctx=0x7f99f7b0,
      pool=0x7f99f018) at subversion/libsvn_client/update.c:337
  #25 0x1c017117 in svn_cl__update (os=0x7f99f1b8, baton=0xcfbca398, pool=0x7f99f018)
      at subversion/svn/update-cmd.c:84
  #26 0x1c010a34 in main (argc=3, argv=0xcfbca56c) at subversion/svn/main.c:2116

Can anyone confirm that this should block the release?

Can anyone comment on what we could do to fix this?

Thanks,
Stefan

Received on 2009-01-06 14:19:23 CET

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