Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 921575 - [abrt] cvs2git-2.3.0-0.7.r5319svn.fc18: git_revision_collector.py:36:start:IOError: [Errno 2] No such file or directory: 'cvs2git-tmp/git-blob.dat'
Summary: [abrt] cvs2git-2.3.0-0.7.r5319svn.fc18: git_revision_collector.py:36:start:IO...
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: cvs2svn
Version: 18
Hardware: x86_64
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Milos Jakubicek
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: abrt_hash:764d564b85c7844b9e537469533...
Depends On: 1039258
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-03-14 13:12 UTC by Ales Ledvinka
Modified: 2016-09-20 04:33 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-02-05 19:57:45 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
File: backtrace (1.06 KB, text/plain)
2013-03-14 13:12 UTC, Ales Ledvinka
no flags Details
File: core_backtrace (636 bytes, text/plain)
2013-03-14 13:12 UTC, Ales Ledvinka
no flags Details
File: environ (2.92 KB, text/plain)
2013-03-14 13:13 UTC, Ales Ledvinka
no flags Details

Description Ales Ledvinka 2013-03-14 13:12:52 UTC
Description of problem:
rsync -av rsync://ipmitool.cvs.sourceforge.net/cvsroot/ipmitool ipmitool.sf-cvs

then should see the parameters on the core file and if not or not reproducible I was running 
$ git cvsimport -p x -v -d /home/aledvink/repo/ipmitool.sf-cvs/ipmitool/ ipmitool.sf
that was stalled or very slowly progressing pending and never ending

so i tried the other tools first the
cvs2git --blobfile=cvs2git-tmp/git-blob.dat --dumpfile=cvs2git-tmp/git-dump.dat --username=cvs2git ipmitool.sf-cvs/ipmitool/

erred on character in commit message (german name or so) so I started experimenting with the encoding
1053  cvs2git ipmitool.sf-cvs/ipmitool/
 1054  cvs2git --blobfile=cvs2git-tmp/git-blob.dat --dumpfile=cvs2git-tmp/git-dump.dat --username=cvs2git ipmitool.sf-cvs/ipmitool/
 1055  cvs2git --blobfile=cvs2git-tmp/git-blob.dat --dumpfile=cvs2git-tmp/git-dump.dat --username=cvs2git ipmitool.sf-cvs/ipmitool/ --encoding=utf8
 1056  cvs2git --blobfile=cvs2git-tmp/git-blob.dat --dumpfile=cvs2git-tmp/git-dump.dat --username=cvs2git ipmitool.sf-cvs/ipmitool/ --encoding utf8
 1057  cvs2git --blobfile=cvs2git-tmp/git-blob.dat --dumpfile=cvs2git-tmp/git-dump.dat --username=cvs2git ipmitool.sf-cvs/ipmitool/ --fallback-encoding latin1
1053  cvs2git ipmitool.sf-cvs/ipmitool/
 1054  cvs2git --blobfile=cvs2git-tmp/git-blob.dat --dumpfile=cvs2git-tmp/git-dump.dat --username=cvs2git ipmitool.sf-cvs/ipmitool/
 1055  cvs2git --blobfile=cvs2git-tmp/git-blob.dat --dumpfile=cvs2git-tmp/git-dump.dat --username=cvs2git ipmitool.sf-cvs/ipmitool/ --encoding=utf8
 1056  cvs2git --blobfile=cvs2git-tmp/git-blob.dat --dumpfile=cvs2git-tmp/git-dump.dat --username=cvs2git ipmitool.sf-cvs/ipmitool/ --encoding utf8
 1057  cvs2git --blobfile=cvs2git-tmp/git-blob.dat --dumpfile=cvs2git-tmp/git-dump.dat --username=cvs2git ipmitool.sf-cvs/ipmitool/ --fallback-encoding latin1

Version-Release number of selected component:
cvs2git-2.3.0-0.7.r5319svn.fc18

Additional info:
cmdline:        /usr/bin/python /usr/bin/cvs2git --blobfile=cvs2git-tmp/git-blob.dat --dumpfile=cvs2git-tmp/git-dump.dat --username=cvs2git ipmitool.sf-cvs/ipmitool/ --fallback-encoding latin1
dso_list:       cvs2commons-2.3.0-0.7.r5319svn.fc18.noarch
executable:     /usr/bin/cvs2git
kernel:         3.8.1-201.fc18.x86_64
uid:            18615

Truncated backtrace:
git_revision_collector.py:36:start:IOError: [Errno 2] No such file or directory: 'cvs2git-tmp/git-blob.dat'

Traceback (most recent call last):
  File "/usr/bin/cvs2git", line 70, in <module>
    git_main(os.path.basename(sys.argv[0]), sys.argv[1:])
  File "/usr/lib/python2.7/site-packages/cvs2svn_lib/main.py", line 119, in git_main
    main(progname, run_options, pass_manager)
  File "/usr/lib/python2.7/site-packages/cvs2svn_lib/main.py", line 96, in main
    pass_manager.run(run_options)
  File "/usr/lib/python2.7/site-packages/cvs2svn_lib/pass_manager.py", line 181, in run
    the_pass.run(run_options, stats_keeper)
  File "/usr/lib/python2.7/site-packages/cvs2svn_lib/passes.py", line 480, in run
    revision_collector.start()
  File "/usr/lib/python2.7/site-packages/cvs2svn_lib/git_revision_collector.py", line 36, in start
    self.dump_file = open(self.blob_filename, 'wb')
IOError: [Errno 2] No such file or directory: 'cvs2git-tmp/git-blob.dat'

Local variables in innermost frame:
self: <cvs2svn_lib.git_revision_collector.GitRevisionCollector object at 0x1a44a50>

Comment 1 Ales Ledvinka 2013-03-14 13:12:56 UTC
Created attachment 710011 [details]
File: backtrace

Comment 2 Ales Ledvinka 2013-03-14 13:12:59 UTC
Created attachment 710012 [details]
File: core_backtrace

Comment 3 Ales Ledvinka 2013-03-14 13:13:03 UTC
Created attachment 710013 [details]
File: environ

Comment 4 Adrian Aichner 2013-05-03 00:25:08 UTC
I was seeing the same backtrace today in cygwin 1.7.18 on Windows XPP, SP3

$ cvs2git --version
cvs2git version 2.4.0
$

    For me the solution was to change from

cvs2git --blobfile=cvs2git-tmp/git-blob.dat --dumpfile=cvs2git-tmp/git-dump.dat ...

    to use output paths without directory component:

cvs2git --blobfile=git-blob.dat --dumpfile=git-dump.dat ...

All 16 passes succeeded for me with this change.

Hope this helps!
Adrian

Comment 5 olibre 2013-07-19 13:55:19 UTC
same bug using cvs2git v2.4.0 on Red Hat v6.3:

$ cvs2git --blobfile=cvs2git-tmp/git-blob.dat --dumpfile=cvs2git-tmp/git-dump.dat --username=cvs2git --encoding=ascii --encoding=cp1252 --encoding=iso8859_15 --encoding=utf_8 --fallback-encoding=cp1252  MyCvsDir
----- pass 1 (CollectRevsPass) -----
Examining all CVS ',v' files...
[...]
Done
Time for pass1 (CollectRevsPass): 21987 seconds.
----- pass 2 (CleanMetadataPass) -----
Converting metadata to UTF8...
Done
Time for pass2 (CleanMetadataPass): 7.085 seconds.
----- pass 3 (CollateSymbolsPass) -----
Checking for forced tags with commits...
Done
Time for pass3 (CollateSymbolsPass): 3.307 seconds.
----- pass 4 (FilterSymbolsPass) -----
Filtering out excluded symbols and summarizing items...
Traceback (most recent call last):
  File "cvs2svn-2.4.0/cvs2git", line 70, in <module>
    git_main(os.path.basename(sys.argv[0]), sys.argv[1:])
  File "/home/l910422/CVS-repo/cvs2svn-2.4.0/cvs2svn_lib/main.py", line 119, in git_main
    main(progname, run_options, pass_manager)
  File "/home/l910422/CVS-repo/cvs2svn-2.4.0/cvs2svn_lib/main.py", line 96, in main
    pass_manager.run(run_options)
  File "/home/l910422/CVS-repo/cvs2svn-2.4.0/cvs2svn_lib/pass_manager.py", line 181, in run
    the_pass.run(run_options, stats_keeper)
  File "/home/l910422/CVS-repo/cvs2svn-2.4.0/cvs2svn_lib/passes.py", line 487, in run
    revision_collector.start()
  File "/home/l910422/CVS-repo/cvs2svn-2.4.0/cvs2svn_lib/git_revision_collector.py", line 36, in start
    self.dump_file = open(self.blob_filename, 'wb')
IOError: [Errno 2] No such file or directory: 'cvs2git-tmp/git-blob.dat'
 

I also fixed this issue without directory cvs2git-tmp:

$ cvs2git --blobfile=git-blob.dat --dumpfile=git-dump.dat --username=cvs2git --encoding=ascii --encoding=cp1252 --encoding=iso8859_15 --encoding=utf_8 --fallback-encoding=cp1252  MyCvsDir
----- pass 1 (CollectRevsPass) -----
Examining all CVS ',v' files...
[...]
Done
Time for pass1 (CollectRevsPass): 22713 seconds.
----- pass 2 (CleanMetadataPass) -----
Converting metadata to UTF8...
Done
Time for pass2 (CleanMetadataPass): 6.939 seconds.
----- pass 3 (CollateSymbolsPass) -----
Checking for forced tags with commits...
Done
Time for pass3 (CollateSymbolsPass): 3.215 seconds.
----- pass 4 (FilterSymbolsPass) -----
Filtering out excluded symbols and summarizing items...
Traceback (most recent call last):
  File "cvs2svn-2.4.0/cvs2git", line 70, in <module>
    git_main(os.path.basename(sys.argv[0]), sys.argv[1:])
  File "/home/l910422/CVS-repo/cvs2svn-2.4.0/cvs2svn_lib/main.py", line 119, in git_main
    main(progname, run_options, pass_manager)
  File "/home/l910422/CVS-repo/cvs2svn-2.4.0/cvs2svn_lib/main.py", line 96, in main
    pass_manager.run(run_options)
  File "/home/l910422/CVS-repo/cvs2svn-2.4.0/cvs2svn_lib/pass_manager.py", line 181, in run
    the_pass.run(run_options, stats_keeper)
  File "/home/l910422/CVS-repo/cvs2svn-2.4.0/cvs2svn_lib/passes.py", line 505, in run
    revision_collector.process_file(cvs_file_items)
  File "/home/l910422/CVS-repo/cvs2svn-2.4.0/cvs2svn_lib/git_revision_collector.py", line 71, in process_file
    self._process_revision(cvs_rev)
  File "/home/l910422/CVS-repo/cvs2svn-2.4.0/cvs2svn_lib/git_revision_collector.py", line 55, in _process_revision
    self.dump_file.write(fulltext)
IOError: [Errno 28] No space left on device
close failed in file object destructor:
IOError: [Errno 28] No space left on device

But now I have to find more storage room...

Comment 6 Fedora End Of Life 2013-12-21 12:08:41 UTC
This message is a reminder that Fedora 18 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 18. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '18'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 18's end of life.

Thank you for reporting this issue and we are sorry that we may not be 
able to fix it before Fedora 18 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior to Fedora 18's end of life.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 7 Fedora End Of Life 2014-02-05 19:57:45 UTC
Fedora 18 changed to end-of-life (EOL) status on 2014-01-14. Fedora 18 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.

Comment 8 Need Real Name 2014-12-13 12:37:38 UTC
Besides leaving out the path in --blogfile and --dumpfile, adding the option:

    --tmpdir=cvs2git-tmp

would also do the trick.  According to the cvs2git manpage, the temporary directory defaults to cvs2svn-tmp, yet the example at http://cvs2svn.tigris.org/cvs2git.html uses:

    cvs2git \
        --blobfile=cvs2git-tmp/git-blob.dat \
        --dumpfile=cvs2git-tmp/git-dump.dat \
        --username=cvs2git \
        /path/to/cvs/repo

which assumes the existence of cvs2git-tmp rather than the cvs2svn-tmp default.

So, I would say it is a tiny documentation error on http://cvs2svn.tigris.org/cvs2git.html that trips up users.  I experienced this exact same problem on my Debian machine.

Cheers,

Anthony


Note You need to log in before you can comment on or make changes to this bug.