Re: RuntimeError: maximum recursion depth exceeded

will soula <[email protected]> Wed, 12 May 2010 15:05:29 -0500
Newsgroups gmane.comp.version-control.subversion.cvs2svn.devel
Message-ID <93B3B6122B906D44BC7E8B8CEFB0DBBB2E4222CF8F@SGP-EXCHANGE.pointserve.com>
I don't know what the error I sent earlier was.  Possibly it was from running out of disk space.  I moved my cvs2svn-2.3.0 folder to a drive that is much larger and got a different error.

stderr:
ERROR: [Errno 39] Directory not empty: 'shrink_test_case-tmp' (ignored)
Traceback (most recent call last):
  File "/data/cvs2svn-2.3.0/contrib/shrink_test_case.py", line 746, in ?
    main()
  File "/data/cvs2svn-2.3.0/contrib/shrink_test_case.py", line 735, in main
    shrink_repository(test_command, cvsrepo)
  File "/data/cvs2svn-2.3.0/contrib/shrink_test_case.py", line 651, in shrink_repository
    try_modification_combinations(
  File "/data/cvs2svn-2.3.0/contrib/shrink_test_case.py", line 624, in try_modification_combinations
    success = mod.try_mod(test_command)
  File "/data/cvs2svn-2.3.0/contrib/shrink_test_case.py", line 127, in try_mod
    self.modify()
  File "/data/cvs2svn-2.3.0/contrib/shrink_test_case.py", line 308, in modify
    shutil.move(self.path, self.tempfile)
  File "/usr/lib/python2.4/shutil.py", line 190, in move
    copytree(src, dst, symlinks=True)
  File "/usr/lib/python2.4/shutil.py", line 111, in copytree
    os.mkdir(dst)
OSError: [Errno 17] File exists: 'shrink_test_case-tmp/f0000001.tmp'

stdout:
Testing with the original repository.
The bug is confirmed to exist in the initial repository.
Testing with the following modifications:
  Deleted directory '/data/cvsrepos/ServiceLogicWFM-backup'

Any ideas?


Thanks,
Will

________________________________

Thanks that fixed the problem and I was able to run the script, except it got an error.  I have included what I could copy out of the putty window and am rerunning it with stderr piped to a file so I can send that in later.  Does this help anyone or do you need the full stderr file?

rty/libiconv/1.9.1/lib/Attic/iso2022_jp2.h,v', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/lib/Attic/iso2022_jp2.h,v', <exceptions.IOError instance at 0xb7c4b90c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/lib/Attic/mac_arabic.h,v', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/lib/Attic/mac_arabic.h,v', <exceptions.IOError instance at 0xb7c4b94c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/lib/Attic/genflags.c,v', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/lib/Attic/genflags.c,v', <exceptions.IOError instance at 0xb7c4b98c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/lib/Attic/loop_unicode.h,v', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/lib/Attic/loop_unicode.h,v', <exceptions.IOError instance at 0xb7c979ec>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/lib/Attic/euc_cn.h,v', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/lib/Attic/euc_cn.h,v', <exceptions.IOError instance at 0xb7c4b9ec>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/lib/Attic/isoir165.h,v', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/lib/Attic/isoir165.h,v', <exceptions.IOError instance at 0xb7c4ba2c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/lib/Attic/Makefile.in,v', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/lib/Attic/Makefile.in,v', <exceptions.IOError instance at 0xb7c4ba4c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/lib/Attic/iso8859_15.h,v', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/lib/Attic/iso8859_15.h,v', <exceptions.IOError instance at 0xb7c4ba8c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/lib/Attic/shift_jisx0213.h,v', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/lib/Attic/shift_jisx0213.h,v', <exceptions.IOError instance at 0xb7c4bacc>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/lib/Attic/iso2022_jp.h,v', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/lib/Attic/iso2022_jp.h,v', <exceptions.IOError instance at 0xb7c4bb0c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/lib/Attic/genaliases2.c,v', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/lib/Attic/genaliases2.c,v', <exceptions.IOError instance at 0xb7c4bb4c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/lib/Attic/gb18030.h,v', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/lib/Attic/gb18030.h,v', <exceptions.IOError instance at 0xb7c4bb8c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/lib/Attic/aliases_osf1.h,v', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/lib/Attic/aliases_osf1.h,v', <exceptions.IOError instance at 0xb7c4bbcc>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/lib/Attic/config.h.msvc,v', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/lib/Attic/config.h.msvc,v', <exceptions.IOError instance at 0xb7c4bc0c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/lib/Attic/cp850.h,v', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/lib/Attic/cp850.h,v', <exceptions.IOError instance at 0xb7c4bc4c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/lib/Attic/converters.h,v', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/lib/Attic/converters.h,v', <exceptions.IOError instance at 0xb7c4bc8c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/src', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/src', <exceptions.OSError instance at 0xb7c9772c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/Attic', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/Attic', <exceptions.OSError instance at 0xb7c9786c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/srclib', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/srclib', <exceptions.OSError instance at 0xb7c978ac>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/windows', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/windows', <exceptions.OSError instance at 0xb7c977ec>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/tests', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/tests', <exceptions.OSError instance at 0xb7c9782c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/djgpp', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/djgpp', <exceptions.OSError instance at 0xb7c978cc>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/autoconf', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/autoconf', <exceptions.OSError instance at 0xb7c9790c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/extras', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/extras', <exceptions.OSError instance at 0xb7c4bcac>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/libcharset', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/libcharset', <exceptions.OSError instance at 0xb7c4bdcc>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/m4', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/m4', <exceptions.OSError instance at 0xb7c4be0c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/include', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/include', <exceptions.OSError instance at 0xb7c4bd0c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/po', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/po', <exceptions.OSError instance at 0xb7c4bd4c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/man', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/man', <exceptions.OSError instance at 0xb7c4bd8c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/libiconv/1.9.1/tools', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/libiconv/1.9.1/tools', <exceptions.OSError instance at 0xb7c4be2c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/jre', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/jre', <exceptions.OSError instance at 0xb7c889ac>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/xcontrib', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/xcontrib', <exceptions.OSError instance at 0xb7c88aac>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/boost', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/boost', <exceptions.OSError instance at 0xb7c88dac>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/xrt', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/xrt', <exceptions.OSError instance at 0xb7c88e2c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/gena', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/gena', <exceptions.OSError instance at 0xb7c88b6c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/SunOS', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/SunOS', <exceptions.OSError instance at 0xb7c88b4c>), ('/data/cvsrepos/ServiceLogicWFM-backup/3rdparty/ROGUE', 'shrink_test_case-tmp/f0000001.tmp/3rdparty/ROGUE', <exceptions.OSError instance at 0xb7c981ac>), ('/data/cvsrepos/ServiceLogicWFM-backup/db', 'shrink_test_case-tmp/f0000001.tmp/db', <exceptions.OSError instance at 0xb7c977ac>), ('/data/cvsrepos/ServiceLogicWFM-backup/lib', 'shrink_test_case-tmp/f0000001.tmp/lib', <exceptions.OSError instance at 0xb7c88b0c>), ('/data/cvsrepos/ServiceLogicWFM-backup/MailLogger.properties,v', 'shrink_test_case-tmp/f0000001.tmp/MailLogger.properties,v', <exceptions.IOError instance at 0xb7c98c4c>), ('/data/cvsrepos/ServiceLogicWFM-backup/install.xml,v', 'shrink_test_case-tmp/f0000001.tmp/install.xml,v', <exceptions.IOError instance at 0xb7c9748c>), ('/data/cvsrepos/ServiceLogicWFM-backup/ivy.xml,v', 'shrink_test_case-tmp/f0000001.tmp/ivy.xml,v', <exceptions.IOError instance at 0xb7c9746c>), ('/data/cvsrepos/ServiceLogicWFM-backup/lazydba', 'shrink_test_case-tmp/f0000001.tmp/lazydba', <exceptions.OSError instance at 0xb7c8880c>), ('/data/cvsrepos/ServiceLogicWFM-backup/base', 'shrink_test_case-tmp/f0000001.tmp/base', <exceptions.OSError instance at 0xb7c98bac>), ('/data/cvsrepos/ServiceLogicWFM-backup/build', 'shrink_test_case-tmp/f0000001.tmp/build', <exceptions.OSError instance at 0xb7c88fcc>), ('/data/cvsrepos/ServiceLogicWFM-backup/src', 'shrink_test_case-tmp/f0000001.tmp/src', <exceptions.OSError instance at 0xb7c887ac>), ('/data/cvsrepos/ServiceLogicWFM-backup/build.number,v', 'shrink_test_case-tmp/f0000001.tmp/build.number,v', <exceptions.IOError instance at 0xb7c88dcc>), ('/data/cvsrepos/ServiceLogicWFM-backup/Attic', 'shrink_test_case-tmp/f0000001.tmp/Attic', <exceptions.OSError instance at 0xb7c8870c>), ('/data/cvsrepos/ServiceLogicWFM-backup/task-install.xml,v', 'shrink_test_case-tmp/f0000001.tmp/task-install.xml,v', <exceptions.IOError instance at 0xb7c8886c>), ('/data/cvsrepos/ServiceLogicWFM-backup/data', 'shrink_test_case-tmp/f0000001.tmp/data', <exceptions.OSError instance at 0xb7c8898c>), ('/data/cvsrepos/ServiceLogicWFM-backup/dispatch.nsi,v', 'shrink_test_case-tmp/f0000001.tmp/dispatch.nsi,v', <exceptions.IOError instance at 0xb7c88a8c>), ('/data/cvsrepos/ServiceLogicWFM-backup/ppl', 'shrink_test_case-tmp/f0000001.tmp/ppl', <exceptions.OSError instance at 0xb7c88e6c>), ('/data/cvsrepos/ServiceLogicWFM-backup/bin', 'shrink_test_case-tmp/f0000001.tmp/bin', <exceptions.OSError instance at 0xb7c8894c>), ('/data/cvsrepos/ServiceLogicWFM-backup/config', 'shrink_test_case-tmp/f0000001.tmp/config', <exceptions.OSError instance at 0xb7c886ec>), ('/data/cvsrepos/ServiceLogicWFM-backup/etc', 'shrink_test_case-tmp/f0000001.tmp/etc', <exceptions.OSError instance at 0xb7c88a0c>), ('/data/cvsrepos/ServiceLogicWFM-backup/perl', 'shrink_test_case-tmp/f0000001.tmp/perl', <exceptions.OSError instance at 0xb7c88bac>), ('/data/cvsrepos/ServiceLogicWFM-backup/ms', 'shrink_test_case-tmp/f0000001.tmp/ms', <exceptions.OSError instance at 0xb7c88acc>), ('/data/cvsrepos/ServiceLogicWFM-backup/scripts', 'shrink_test_case-tmp/f0000001.tmp/scripts', <exceptions.OSError instance at 0xb7c88cac>), ('/data/cvsrepos/ServiceLogicWFM-backup/slbase.iap_xml,v', 'shrink_test_case-tmp/f0000001.tmp/slbase.iap_xml,v', <exceptions.IOError instance at 0xb7c888ec>), ('/data/cvsrepos/ServiceLogicWFM-backup/CVS_CO_UNIX.sh,v', 'shrink_test_case-tmp/f0000001.tmp/CVS_CO_UNIX.sh,v', <exceptions.IOError instance at 0xb7c8876c>), ('/data/cvsrepos/ServiceLogicWFM-backup/Documentation', 'shrink_test_case-tmp/f0000001.tmp/Documentation', <exceptions.OSError instance at 0xb7c8888c>), ('/data/cvsrepos/ServiceLogicWFM-backup/app-defaults', 'shrink_test_case-tmp/f0000001.tmp/app-defaults', <exceptions.OSError instance at 0xb7c88f0c>), ('/data/cvsrepos/ServiceLogicWFM-backup/task-dependency.xml,v', 'shrink_test_case-tmp/f0000001.tmp/task-dependency.xml,v', <exceptions.IOError instance at 0xb7c4be4c>), ('/data/cvsrepos/ServiceLogicWFM-backup/build.xml,v', 'shrink_test_case-tmp/f0000001.tmp/build.xml,v', <exceptions.IOError instance at 0xb7c4be8c>), ('/data/cvsrepos/ServiceLogicWFM-backup/CVS_CO_WIN.sh,v', 'shrink_test_case-tmp/f0000001.tmp/CVS_CO_WIN.sh,v', <exceptions.IOError instance at 0xb7c4becc>), ('/data/cvsrepos/ServiceLogicWFM-backup/License.txt,v', 'shrink_test_case-tmp/f0000001.tmp/License.txt,v', <exceptions.IOError instance at 0xb7c4bf0c>), ('/data/cvsrepos/ServiceLogicWFM-backup/packaging', 'shrink_test_case-tmp/f0000001.tmp/packaging', <exceptions.OSError instance at 0xb7c4bdac>), ('/data/cvsrepos/ServiceLogicWFM-backup/LOGS', 'shrink_test_case-tmp/f0000001.tmp/LOGS', <exceptions.OSError instance at 0xb7c4bf4c>), ('/data/cvsrepos/ServiceLogicWFM-backup/PATCHES', 'shrink_test_case-tmp/f0000001.tmp/PATCHES', <exceptions.OSError instance at 0xb7c4bf8c>)]

________________________________

Hi,

> If I run python shrink_test_case.py --help then I get this error:
> Traceback (most recent call last):
>   File "shrink_test_case.py", line 48, in ?
>     from contrib.rcs_file_filter import WriteRCSFileSink
> ImportError: No module named contrib.rcs_file_filter

That one's a known bug (fixed on trunk) in shrink_test_case.py.

Try:

python /full/path/here/its/important/shrink_test_case.py --help

Kind regards,

Jon



________________________________

From: will soula [mailto:[email protected]]
Sent: 12 May 2010 13:15
To: [email protected]
Subject: Re: RuntimeError: maximum recursion depth exceeded


I cannot get the shrink_test_case.py program to run.  If I run
shrink_test_case.py --help then I get an error that shrink_test_case.py:
command not found.  If I run python shrink_test_case.py --help then I
get this error:
Traceback (most recent call last):
  File "shrink_test_case.py", line 48, in ?
    from contrib.rcs_file_filter import WriteRCSFileSink
ImportError: No module named contrib.rcs_file_filter


Any ideas?

Thanks,
Will


________________________________


will soula wrote:
> I am trying to convert several cvs repos to svn and they have all gone
> fine except for one that gets a "RuntimeError: maximum recursion depth
> exceeded" error. [...]
>
> I tried to run the shrink_test_case.py file but I have no clue how to
> use it.  What goes in the TEST_COMMAND variable?  I tried setting it
to
> the command line I run to get the error, but no dice.

You need to run a command that succeeds (exits with a returncode of 0)
if the error is still present.  Make sure you do this on a copy of your
repository, because the copy will be destroyed by this process!  Let's
call the path to your copy "$CVSREPO".  In your case you could write a
script file something like (untested):

========== In file test.sh: =========================================
#! /bin/sh

cvs2svn [...put your command options here...] $CVSREPO 2>&1 |
    grep -q 'maximum recursion depth exceeded'
=====================================================================

This script runs cvs2svn on $CVSREPO and then checks whether the output
of cvs2svn includes the string 'maximum recursion depth exceeded'.  If
so, then the error that you want to report is obviously still there.

Then make the test.sh file executable ("chmod +x test.sh") then run
shrink_test_case.py as follows:

/some/path/contrib/shrink_test_case.py $CVSREPO /another/path/test.sh

When shrink_test_case.sh is done working, $CVSREPO should be much
smaller than it started and hopefully something that you can send to the
mailing list along with the info requested by Jon Foster.

You can run "shrink_test_case.py --help" for a little bit of
documentation.

Michael
______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________



**********************************************************************
This email and its attachments may be confidential and are intended solely for the use of the individual to whom it is addressed. Any views or opinions expressed are solely those of the author and do not necessarily represent those of Cabot Communications Ltd.

If you are not the intended recipient of this email and its attachments, you must take no action based upon them, nor must you copy or show them to anyone.

Cabot Communications Limited
Verona House, Filwood Road, Bristol BS16 3RY, UK
+44 (0) 1179584232

Co. Registered in England number 02817269

Please contact the sender if you believe you have received this email in error.

**********************************************************************


______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________

------------------------------------------------------
http://cvs2svn.tigris.org/ds/viewMessage.do?dsForumId=1667&dsMessageId=2608137

To unsubscribe from this discussion, e-mail: [[email protected]].

------------------------------------------------------
http://cvs2svn.tigris.org/ds/viewMessage.do?dsForumId=1667&dsMessageId=2608294

To unsubscribe from this discussion, e-mail: [[email protected]].