[issue827] hg convert silently truncates history on "large" cvs repositories

Florian Hars mercurial-bugs at selenic.com
Wed Nov 7 10:04:09 CST 2007


New submission from Florian Hars <hars at bik-gmbh.de>:

"Large" here means the whooping number of almost six hundred commits.

cvs.py contains this code around line 50:

        cmd += " 2>&1"

        d = os.getcwd()
        try:
            os.chdir(self.path)
            id = None
            state = 0
            for l in os.popen(cmd):
                 ...

For my repository, the loop ended after PatchSet 149 of 561.
Commenting out the cmd += " 2>&1" solved the problem.

My initial guess would be that os.popen got confused with cvsps flushing and
closing stderr a few seconds before all of stdout was read or something like that:

$ cvsps -A -u --cvs-direct -q 2>foo 1>bar
$ stat foo | grep Modify
Modify: 2007-11-07 17:00:41.390559978 +0100
$ stat bar | grep Modify
Modify: 2007-11-07 17:00:44.102350788 +0100

----------
messages: 4287
nosy: fhars
priority: bug
status: unread
title: hg convert silently truncates history on "large" cvs repositories

____________________________________________________
Mercurial issue tracker <mercurial-bugs at selenic.com>
<http://www.selenic.com/mercurial/bts/issue827>
____________________________________________________



More information about the Mercurial-devel mailing list