[Bug 3507] New: hg addremove fails for largefiles repo after "hg remove"

bugzilla-daemon at bz.selenic.com bugzilla-daemon at bz.selenic.com
Wed Jun 20 15:22:24 CDT 2012


http://bz.selenic.com/show_bug.cgi?id=3507

          Priority: normal
            Bug ID: 3507
                CC: mercurial-devel at selenic.com, natosha at gmail.com
          Assignee: bugzilla at selenic.com
           Summary: hg addremove fails for largefiles repo after "hg
                    remove"
          Severity: bug
    Classification: Unclassified
                OS: All
          Reporter: white at invicro.com
          Hardware: All
            Status: UNCONFIRMED
           Version: 2.2.1
         Component: largefiles
           Product: Mercurial

If you use "hg remove" to remove a file from a largefiles repository and then
run "hg addremove", you get the following error:

abort: No such file or directory: /private/tmp/hgtest/hgtest/normal

To reproduce:

hg init hgtest
cd hgtest
echo > normal
echo > large
hg add normal
hg add --large large
hg commit -m "added"
hg remove normal 
hg addremove

Traceback:
$hg addremove --debug --traceback
Traceback (most recent call last):
  File "/Library/Python/2.7/site-packages/mercurial/dispatch.py", line 87, in
_runcatch
    return _dispatch(req)
  File "/Library/Python/2.7/site-packages/mercurial/dispatch.py", line 685, in
_dispatch
    cmdpats, cmdoptions)
  File "/Library/Python/2.7/site-packages/mercurial/dispatch.py", line 467, in
runcommand
    ret = _runcommand(ui, options, cmd, d)
  File "/Library/Python/2.7/site-packages/mercurial/dispatch.py", line 739, in
_runcommand
    return checkargs()
  File "/Library/Python/2.7/site-packages/mercurial/dispatch.py", line 693, in
checkargs
    return cmdfunc()
  File "/Library/Python/2.7/site-packages/mercurial/dispatch.py", line 682, in
<lambda>
    d = lambda: util.checksignature(func)(ui, *args, **cmdoptions)
  File "/Library/Python/2.7/site-packages/mercurial/util.py", line 456, in
check
    return func(*args, **kwargs)
  File "/Library/Python/2.7/site-packages/mercurial/extensions.py", line 139,
in wrap
    util.checksignature(origfn), *args, **kwargs)
  File "/Library/Python/2.7/site-packages/mercurial/util.py", line 456, in
check
    return func(*args, **kwargs)
  File "/Library/Python/2.7/site-packages/hgext/largefiles/overrides.py", line
911, in override_addremove
    add_largefiles(ui, repo, *pats, **opts)
  File "/Library/Python/2.7/site-packages/hgext/largefiles/overrides.py", line
86, in add_largefiles
    os.lstat(repo.wjoin(f)).st_size >= lfsize * 1024 * 1024)
OSError: [Errno 2] No such file or directory:
'/private/tmp/hgtest/hgtest/normal'
abort: No such file or directory: /private/tmp/hgtest/hgtest/normal

Note: This bug is related to bug 3364 (largefiles: hg addremove fails for
already removed largefile).  However, the error in 3364 is produced when files
are removed via system (rm or del, rather than hg remove).

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Mercurial-devel mailing list