Largefiles Issue on Update

Matt Harbison matt_harbison at yahoo.com
Tue Dec 11 01:34:09 UTC 2012


On Mon, 10 Dec 2012 15:29:05 +0000, Kämpf, Andreas (SMS Siemag AG) wrote:

> Hi!
> 
> When trying to perform an update on one special computer, I experience a
> problem I cannot comprehend:
> 
> 
> C:\Users\u928>hg update --repository X:\SMSSiemag\MSC --config
> ui.merge=internal:merge --rev 956 --check --traceback --debug --verbose
>   searching for copies back to rev 956 unmatched files in other:
>    .hglf/doc/04.MSC-Mill Level 2/04.07.Training/04.07.01.PCFC
>    Training.ppt
> resolving manifests
>  overwrite: False, partial: False ancestor: 842471620b1b, local:
>  842471620b1b+, remote: 353293c1e2e4 .hglf/doc/04.MSC-Mill Level
>  2/04.07.Training/04.07.01.PCFC Training.ppt: remote created -> g
> updating: .hglf/doc/04.MSC-Mill Level 2/04.07.Training/04.07.01.PCFC
> Training.ppt 1/1 files (100.00%)
> getting .hglf/doc/04.MSC-Mill Level 2/04.07.Training/04.07.01.PCFC
> Training.ppt 1 files updated, 0 files merged, 0 files removed, 0 files
> unresolved getting changed largefiles found
> fd2294c048817939301996b557c03b85f6a1a378 in store Traceback (most recent
> call last):
>   File "mercurial\dispatch.pyo", line 88, in _runcatch File
>   "mercurial\dispatch.pyo", line 740, in _dispatch File
>   "mercurial\dispatch.pyo", line 514, in runcommand File
>   "mercurial\dispatch.pyo", line 830, in _runcommand File
>   "mercurial\dispatch.pyo", line 801, in checkargs File
>   "mercurial\dispatch.pyo", line 737, in <lambda>
>   File "mercurial\util.pyo", line 471, in check File
>   "mercurial\extensions.pyo", line 144, in wrap File
>   "mercurial\util.pyo", line 471, in check File
>   "hgext\largefiles\overrides.pyo", line 289, in overrideupdate File
>   "mercurial\util.pyo", line 471, in check File
>   "mercurial\commands.pyo", line 5858, in update File
>   "mercurial\extensions.pyo", line 189, in wrap File
>   "hgext\largefiles\overrides.pyo", line 646, in hgupdate File
>   "hgext\largefiles\lfcommands.pyo", line 447, in updatelfiles File
>   "hgext\largefiles\lfcommands.pyo", line 447, in <lambda> File
>   "hgext\largefiles\lfcommands.pyo", line 475, in _updatelfile File
>   "shutil.pyo", line 82, in copyfile
> IOError: [Errno 2] No such file or directory:
> 'X:\\SMSSiemag\\MSC\\doc/04.MSC-Mill Level
> 2/04.07.Training/04.07.01.PCFC Training.ppt'
> abort: No such file or directory: X:\SMSSiemag\MSC\doc/04.MSC-Mill Level
> 2/04.07.Training/04.07.01.PCFC Training.ppt
> 
> Does this make sense to anyone? Where is the problem on this very
> computer? On other computers it works fine, all running TortoiseHg 2.5.1
> with Mercurial 2.3.2. The team server is running Mercurial 2.2.2 via
> Lenny backports served by SCM Manager.
> 
> My next approach would be to delete the repo and clone it from our team
> repo once again.
> 
> Thanks for any help!


Do you remember what you did to get the repo in this state?  I've never
had this issue before (though I generally update with -C to get a clean
slate).


According to the code, it appears the filesystem contains these:

  .hglf/doc/04.MSC-Mill Level 2/04.07.Training/04.07.01.PCFC Training.ppt
  .hglf/doc/04.MSC-Mill Level 2/04.07.Training/04.07.01.PCFC Training.ppt.orig

which makes it want to try to copy this:

  doc/04.MSC-Mill Level 2/04.07.Training/04.07.01.PCFC Training.ppt

to this:
 
  doc/04.MSC-Mill Level 2/04.07.Training/04.07.01.PCFC Training.ppt.orig


But the source ppt file doesn't exist.  It seems like a bad assumption
that if the standin file (under .hglf/) exists, the actual largefile must
exist.

Moving this repo somewhere else and recloning should fix this if you are
in a pinch (and I suspect so would 'update -C' or deleting the *.orig
files and updating again), but I'm interested in getting more info about
this before this particular state gets destroyed.

--Matt






More information about the Mercurial mailing list