[Bug 4547] New: Mercirual crashes on repo update with largefiles extension

mercurial-bugs at selenic.com mercurial-bugs at selenic.com
Fri Feb 20 13:58:37 UTC 2015


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

          Priority: urgent
            Bug ID: 4547
          Keywords: regression
                CC: mercurial-devel at selenic.com, natosha at gmail.com
          Assignee: bugzilla at selenic.com
           Summary: Mercirual crashes on repo update with largefiles
                    extension
          Severity: bug
    Classification: Unclassified
                OS: Windows
          Reporter: artur.matuszewski at king.com
          Hardware: PC
            Status: UNCONFIRMED
           Version: 3.3
         Component: largefiles
           Product: Mercurial

Hi, after installing Mercurial 3.3 one of our repositories using largefiles
extension started crashing trying to update to different revisions.


Trace from using TortoiseHG Workbench:
% hg update --rev default --clean
** unknown exception encountered, please report by visiting
** http://mercurial.selenic.com/wiki/BugTracker
** Python 2.7.6 (default, Nov 10 2013, 19:24:24) [MSC v.1500 64 bit (AMD64)]
** Mercurial Distributed SCM (version 3.3)
** Extensions loaded: largefiles, tortoisehg.util.hgcommands,
tortoisehg.util.partialcommit, tortoisehg.util.pipeui,
tortoisehg.util.win32ill, tortoisehg.util.hgdispatch
Traceback (most recent call last):
  File "hg", line 42, in <module>
  File "mercurial\dispatch.pyo", line 28, in run
  File "mercurial\dispatch.pyo", line 71, in dispatch
  File "mercurial\dispatch.pyo", line 140, in _runcatch
  File "mercurial\dispatch.pyo", line 860, in _dispatch
  File "mercurial\dispatch.pyo", line 621, in runcommand
  File "mercurial\dispatch.pyo", line 951, in _runcommand
  File "mercurial\dispatch.pyo", line 922, in checkargs
  File "mercurial\dispatch.pyo", line 857, in <lambda>
  File "mercurial\util.pyo", line 711, in check
  File "mercurial\commands.pyo", line 5538, in serve
  File "mercurial\cmdutil.pyo", line 592, in service
  File "mercurial\commandserver.pyo", line 289, in run
  File "mercurial\commandserver.pyo", line 242, in serve
  File "mercurial\commandserver.pyo", line 220, in serveone
  File "mercurial\commandserver.pyo", line 203, in runcommand
  File "mercurial\dispatch.pyo", line 71, in dispatch
  File "mercurial\dispatch.pyo", line 140, in _runcatch
  File "mercurial\extensions.pyo", line 194, in wrap
  File "tortoisehg\util\hgdispatch.pyo", line 23, in _dispatch
  File "mercurial\dispatch.pyo", line 860, in _dispatch
  File "mercurial\dispatch.pyo", line 621, in runcommand
  File "mercurial\dispatch.pyo", line 951, in _runcommand
  File "mercurial\dispatch.pyo", line 922, in checkargs
  File "mercurial\dispatch.pyo", line 857, in <lambda>
  File "mercurial\util.pyo", line 711, in check
  File "mercurial\extensions.pyo", line 149, in wrap
  File "mercurial\util.pyo", line 711, in check
  File "hgext\largefiles\overrides.pyo", line 408, in overrideupdate
  File "mercurial\util.pyo", line 711, in check
  File "mercurial\commands.pyo", line 6262, in update
  File "mercurial\hg.pyo", line 521, in clean
  File "mercurial\hg.pyo", line 506, in updaterepo
  File "mercurial\extensions.pyo", line 194, in wrap
  File "hgext\largefiles\overrides.pyo", line 1324, in mergeupdate
  File "mercurial\merge.pyo", line 1142, in update
  File "mercurial\merge.pyo", line 772, in applyupdates
  File "mercurial\subrepo.pyo", line 186, in submerge
  File "mercurial\subrepo.pyo", line 46, in decoratedmethod
  File "mercurial\subrepo.pyo", line 768, in get
  File "mercurial\hg.pyo", line 506, in updaterepo
  File "mercurial\extensions.pyo", line 194, in wrap
  File "hgext\largefiles\overrides.pyo", line 1324, in mergeupdate
  File "mercurial\merge.pyo", line 1142, in update
  File "mercurial\merge.pyo", line 772, in applyupdates
  File "mercurial\subrepo.pyo", line 186, in submerge
  File "mercurial\subrepo.pyo", line 46, in decoratedmethod
  File "mercurial\subrepo.pyo", line 768, in get
  File "mercurial\hg.pyo", line 506, in updaterepo
  File "mercurial\extensions.pyo", line 194, in wrap
  File "hgext\largefiles\overrides.pyo", line 1324, in mergeupdate
  File "mercurial\merge.pyo", line 1142, in update
  File "mercurial\merge.pyo", line 753, in applyupdates
  File "mercurial\subrepo.pyo", line 222, in submerge
  File "mercurial\subrepo.pyo", line 46, in decoratedmethod
  File "mercurial\subrepo.pyo", line 724, in remove
  File "mercurial\hg.pyo", line 521, in clean
  File "mercurial\hg.pyo", line 506, in updaterepo
  File "mercurial\extensions.pyo", line 194, in wrap
  File "hgext\largefiles\overrides.pyo", line 1332, in mergeupdate
  File "hgext\largefiles\lfcommands.pyo", line 446, in updatelfiles
  File "hgext\largefiles\lfutil.pyo", line 581, in getstatuswriter
  File "mercurial\repoview.pyo", line 310, in __getattr__
AttributeError: 'localrepository' object has no attribute '_lfstatuswriters'
** unknown exception encountered, please report by visiting
** http://mercurial.selenic.com/wiki/BugTracker
** Python 2.7.6 (default, Nov 10 2013, 19:24:24) [MSC v.1500 64 bit (AMD64)]
** Mercurial Distributed SCM (version 3.3)
** Extensions loaded: largefiles, tortoisehg.util.hgcommands,
tortoisehg.util.partialcommit, tortoisehg.util.pipeui,
tortoisehg.util.win32ill, tortoisehg.util.hgdispatch
cmdserver: process exited unexpectedly with code 255


The same happens when not using TortoiseHG Workbench:
hg update --rev default --clean
** unknown exception encountered, please report by visiting
** http://mercurial.selenic.com/wiki/BugTracker
** Python 2.7.6 (default, Nov 10 2013, 19:24:24) [MSC v.1500 64 bit (AMD64)]
** Mercurial Distributed SCM (version 3.3)
** Extensions loaded: largefiles
Traceback (most recent call last):
  File "hg", line 42, in <module>
  File "mercurial\dispatch.pyo", line 28, in run
  File "mercurial\dispatch.pyo", line 71, in dispatch
  File "mercurial\dispatch.pyo", line 140, in _runcatch
  File "mercurial\dispatch.pyo", line 860, in _dispatch
  File "mercurial\dispatch.pyo", line 621, in runcommand
  File "mercurial\dispatch.pyo", line 951, in _runcommand
  File "mercurial\dispatch.pyo", line 922, in checkargs
  File "mercurial\dispatch.pyo", line 857, in <lambda>
  File "mercurial\util.pyo", line 711, in check
  File "mercurial\extensions.pyo", line 149, in wrap
  File "mercurial\util.pyo", line 711, in check
  File "hgext\largefiles\overrides.pyo", line 408, in overrideupdate
  File "mercurial\util.pyo", line 711, in check
  File "mercurial\commands.pyo", line 6262, in update
  File "mercurial\hg.pyo", line 521, in clean
  File "mercurial\hg.pyo", line 506, in updaterepo
  File "mercurial\extensions.pyo", line 194, in wrap
  File "hgext\largefiles\overrides.pyo", line 1324, in mergeupdate
  File "mercurial\merge.pyo", line 1142, in update
  File "mercurial\merge.pyo", line 772, in applyupdates
  File "mercurial\subrepo.pyo", line 186, in submerge
  File "mercurial\subrepo.pyo", line 46, in decoratedmethod
  File "mercurial\subrepo.pyo", line 768, in get
  File "mercurial\hg.pyo", line 506, in updaterepo
  File "mercurial\extensions.pyo", line 194, in wrap
  File "hgext\largefiles\overrides.pyo", line 1324, in mergeupdate
  File "mercurial\merge.pyo", line 1142, in update
  File "mercurial\merge.pyo", line 772, in applyupdates
  File "mercurial\subrepo.pyo", line 186, in submerge
  File "mercurial\subrepo.pyo", line 46, in decoratedmethod
  File "mercurial\subrepo.pyo", line 768, in get
  File "mercurial\hg.pyo", line 506, in updaterepo
  File "mercurial\extensions.pyo", line 194, in wrap
  File "hgext\largefiles\overrides.pyo", line 1324, in mergeupdate
  File "mercurial\merge.pyo", line 1142, in update
  File "mercurial\merge.pyo", line 753, in applyupdates
  File "mercurial\subrepo.pyo", line 222, in submerge
  File "mercurial\subrepo.pyo", line 46, in decoratedmethod
  File "mercurial\subrepo.pyo", line 724, in remove
  File "mercurial\hg.pyo", line 521, in clean
  File "mercurial\hg.pyo", line 506, in updaterepo
  File "mercurial\extensions.pyo", line 194, in wrap
  File "hgext\largefiles\overrides.pyo", line 1332, in mergeupdate
  File "hgext\largefiles\lfcommands.pyo", line 446, in updatelfiles
  File "hgext\largefiles\lfutil.pyo", line 581, in getstatuswriter
  File "mercurial\repoview.pyo", line 310, in __getattr__
AttributeError: 'localrepository' object has no attribute '_lfstatuswriters'


I have created and used the local clone of the repository before, with an
earlier version of Mercurial.


The repository has the following structure (sizes include working directories):
Repo Root (total 15GB)
+- Subrepo1 (2GB)
+---Sub-subrepo1 (1.4 GB)
+----Sub-sub-subrepo1 (24 MB)
+---Sub-subrepo2 (720 MB)
+- Subrepo2 (13 GB) (This Subrepo has .hglf)
+- Subrepo3 (1 MB)
+- Subrepo4 (9 MB)
+- Subrepo5 (22 MB)

The extension is enabled on the Repo Root repository. That is the only
extension used.
I have a fresh Windows 7 SP1 install and a fresh Mercurial 3.3 install.

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


More information about the Mercurial-devel mailing list