Hide Forgot
Description of problem: 1) the new createrepo tracebacks in the worker: Worker 0: Traceback (most recent call last): Worker 0: File "/usr/share/createrepo/worker.py", line 99, in <module> Worker 0: main(sys.argv[1:]) Worker 0: File "/usr/share/createrepo/worker.py", line 87, in main Worker 0: globalopts.get('clog_limit', None))) Worker 0: File "/usr/lib/python2.7/site-packages/yum/packages.py", line 1220, in xml_dump_other_metadata Worker 0: msg += "%s\n</package>\n" % misc.to_unicode(self._dump_changelog(c log_limit)) Worker 0: File "/usr/lib/python2.7/site-packages/yum/packages.py", line 1186, in _dump_changelog Worker 0: clogs = self.changelog[:clog_limit] Worker 0: TypeError: slice indices must be integers or None or have an __index__ method 2) these errors aren't propagated: [root@nostromo os]# createrepo -d --verbose . Spawning worker 0 with 70 pkgs Worker 0: reading Packages/g/gcc-gfortran-4.4.4-10.fc13.i686.rpm Worker 0: Traceback (most recent call last): Worker 0: File "/usr/share/createrepo/worker.py", line 99, in <module> Worker 0: main(sys.argv[1:]) Workers Finished Gathering worker results Saving Primary metadata Saving file lists metadata Saving other metadata Generating sqlite DBs Starting other db creation: Thu Jan 27 13:02:58 2011 Ending other db creation: Thu Jan 27 13:02:58 2011 Starting filelists db creation: Thu Jan 27 13:02:58 2011 Ending filelists db creation: Thu Jan 27 13:02:58 2011 Starting primary db creation: Thu Jan 27 13:02:58 2011 Ending primary db creation: Thu Jan 27 13:02:58 2011 Sqlite DBs complete [root@nostromo os]# echo $? 0 Version-Release number of selected component (if applicable): createrepo-0.9.9-1.fc15.noarch How reproducible: 100% Steps to Reproduce: 1. rawhide Actual results: Random stuff falls out of the repo metadata. (Which makes the mash depsolve & daily depcheck mail that uses this repodata return very strange results)
I'll note it's not just the metadata... the packages aren't in the created repo either. (perl-5 for example).
I can fix the 'tracebacks aren't fatal' problem. the specific traceback appears to be from changelog_limit config value being set to something odd.
1. fixed the changelog_limit issue 2. non-zero exit values from any worker are now a fatal error for the whole createrepo process.
(In reply to comment #1) > I'll note it's not just the metadata... the packages aren't in the created repo > either. > (perl-5 for example). This is due to mash's multilib solver that removes RPMs that are in the fully depsolved set - if the package isn't in the actual repodata, it will get removed.
That should be "aren't in the fully depsolved set", of course.