Bug 281611 (Pirut_crash_2) - pirut crashed when adding file to transaction
Summary: pirut crashed when adding file to transaction
Keywords:
Status: CLOSED ERRATA
Alias: Pirut_crash_2
Product: Fedora
Classification: Fedora
Component: rpm
Version: 7
Hardware: x86_64
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Panu Matilainen
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-09-06 22:40 UTC by Need Real Name
Modified: 2007-11-30 22:12 UTC (History)
3 users (show)

Fixed In Version: 4.4.2.2-2.fc7
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-10-24 07:14:03 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Need Real Name 2007-09-06 22:40:25 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.8.1.5) Gecko/20070718 Fedora/2.0.0.5-1.fc7 Firefox/2.0.0.5

Description of problem:
While pirut was adding a file to a transaction, it crashed.  The file was php-pecl-mailparse.  I chose not to add this package.

Version-Release number of selected component (if applicable):
pirut-1.3.9

How reproducible:
Didn't try


Steps to Reproduce:
1.
2.
3.

Actual Results:
pirut crashed

Expected Results:
pirut should have finished normally

Additional info:
Component: pirut
Summary: TB90e50bc2 depsolve.py:223:populateTs:error: adding package to transaction failed

Traceback (most recent call last):
  File "/usr/sbin/pirut", line 337, in _apply
    self.applyChanges(self.mainwin)
  File "/usr/lib/python2.5/site-packages/pirut/__init__.py", line 743, in applyChanges
    self.runTransaction(mainwin)
  File "/usr/lib/python2.5/site-packages/pirut/__init__.py", line 709, in runTransaction
    self.populateTs(keepold=0)
  File "/usr/lib/python2.5/site-packages/yum/depsolve.py", line 223, in populateTs
    self.ts.addInstall(hdr, (hdr, rpmfile), txmbr.ts_state)
error: adding package to transaction failed

Local variables in innermost frame:
ts_elem: {}
hdr: <rpm.hdr object at 0x63b1270>
self: <__main__.PackageManager object at 0xf86d50>
rpmfile: //var/cache/yum/fedora/packages/php-pecl-mailparse-2.1.1-5.fc6.x86_64.rpm
keepold: 0
txmbr: php-pecl-mailparse.x86_64 0-2.1.1-5.fc6 - u
test: 0

Comment 1 Panu Matilainen 2007-09-11 07:48:27 UTC
Either it's a malformed package or pirut is adding the same (or older) package
to the transaction twice. Rpm 4.4.2.1 treats that as an error and causes
rpm-python to throw an exception, which is a bit questionable as rpm can handle
the situation just fine.

4.4.2.2 treats the situation as a warning and thus wont throw exception either,
once 4.4.2.2 final is out F7 will get it, presumably fixing this case. Pirut
should then catch the exception because after that it means a serious problem
(malformed package etc)

Comment 2 Tim Howe 2007-09-19 15:07:31 UTC
I don't believe I have any new information.  Just in case it will be helpful,
here's my dump:

___________________________________________________

Component: Software Manager
Summary: TBec0013f3 depsolve.py:162:populateTs:error: adding package to
transaction failed

Traceback (most recent call last):
  File "/usr/sbin/pirut", line 334, in _apply
    self.applyChanges(self.mainwin)
  File "/usr/lib/python2.4/site-packages/pirut/__init__.py", line 559, in
applyChanges
    self.checkDeps(mainwin)
  File "/usr/lib/python2.4/site-packages/pirut/__init__.py", line 328, in checkDeps
    (result, msgs) = self.buildTransaction()
  File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 448, in
buildTransaction
    (rescode, restring) = self.resolveDeps()
  File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 191, in resolveDeps
    self.populateTs(test=1)
  File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 162, in populateTs
    self.ts.addInstall(hdr, (hdr, rpmfile), txmbr.ts_state)
error: adding package to transaction failed

Local variables in innermost frame:
ts_elem: {(('strace', 'i386', '0', '4.5.16', '1.fc6'), 'i'): 1, (('rcs', 'i386',
'0', '5.7', '30.1'), 'i'): 1, (('doxygen', 'i386', '1', '1.5.1', '1'), 'i'): 1,
(('automake15', 'noarch', '0', '1.5', '16'), 'i'): 1, (('diffstat', 'i386', '0',
'1.43', '1.fc6'), 'i'): 1, (('automake', 'noarch', '0', '1.9.6', '2.1'), 'i'):
1, (('flex', 'i386', '0', '2.5.4a', '41.fc6'), 'i'): 1, (('gcc', 'i386', '0',
'4.1.2', '13.fc6'), 'i'): 1, (('libtool', 'i386', '0', '1.5.22', '6.1'), 'i'):
1, (('subversion', 'i386', '0', '1.4.3', '2.fc6'), 'i'): 1, (('systemtap',
'i386', '0', '0.5.13', '1.fc6'), 'i'): 1, (('cscope', 'i386', '0', '15.5',
'15.fc6.1'), 'i'): 1, (('frysk', 'i686', '0', '0.0.1.2007.02.07.rh1', '1.fc6'),
'i'): 1, (('patchutils', 'i386', '0', '0.2.31', '2.2.2'), 'i'): 1, (('ltrace',
'i386', '0', '0.5', '6.45svn.fc6'), 'i'): 1, (('ctags', 'i386', '0', '5.6',
'1.1'), 'i'): 1, (('oprofile-gui', 'i386', '0', '0.9.2', '3.fc6'), 'i'): 1,
(('pfmon', 'i386', '0', '3.2', '0.060621.7.1'), 'i'): 1, (('rpm-build', 'i386',
'0', '4.4.2.1', '1.fc6'), 'i'): 1, (('pstack', 'i386', '0', '1.2', '7.2.2'),
'i'): 1, (('oprofile', 'i386', '0', '0.9.2', '3.fc6'), 'i'): 1, (('valgrind',
'i386', '1', '3.2.1', '4'), 'i'): 1, (('ccache', 'i386', '0', '2.4', '8.fc6'),
'i'): 1, (('cpp', 'i386', '0', '4.1.2', '13.fc6'), 'e'): 1, (('bison', 'i386',
'0', '2.3', '2.1'), 'i'): 1, (('autoconf', 'noarch', '0', '2.59', '12'), 'i'):
1, (('python-ldap', 'i386', '0', '2.2.0', '2.1'), 'i'): 1, (('nqc', 'i386', '0',
'3.1.4', '6.fc6'), 'i'): 1, (('automake16', 'noarch', '0', '1.6.3', '8'), 'i'):
1, (('antlr', 'i386', '0', '2.7.6', '4jpp.2'), 'e'): 1, (('texinfo', 'i386',
'0', '4.8', '14.fc6'), 'i'): 1, (('indent', 'i386', '0', '2.2.9', '14.fc6'),
'i'): 1, (('byacc', 'i386', '0', '1.9', '29.2.2'), 'i'): 1, (('gcc-c++', 'i386',
'0', '4.1.2', '13.fc6'), 'i'): 1, (('redhat-rpm-config', 'noarch', '0',
'8.0.45', '9.fc6'), 'i'): 1, (('gcc-gfortran', 'i386', '0', '4.1.2', '13.fc6'),
'i'): 1, (('automake14', 'noarch', '0', '1.4p6', '13'), 'i'): 1, (('cvs',
'i386', '0', '1.11.22', '6.fc6'), 'i'): 1, (('automake17', 'noarch', '0',
'1.7.9', '7'), 'i'): 1, (('elfutils', 'i386', '0', '0.129', '1.fc6'), 'i'): 1,
(('gdb', 'i386', '0', '6.5', '15.fc6'), 'i'): 1, (('swig', 'i386', '0',
'1.3.31', '0.fc6'), 'i'): 1}
hdr: <rpm.hdr object at 0xa4fb110>
pkginfo: ('redhat-rpm-config', 'noarch', '0', '8.0.45', '9.fc6')
self: <__main__.PackageManager object at 0x9910c0c>
rpmfile: //var/cache/yum/core/packages/gcc-c++-4.1.1-30.i386.rpm
keepold: 1
epoch: 0
txmbr: gcc-c++.i386 0-4.1.1-30 - u
mode: i
test: 1
te: <rpm.te object at 0xb7bc5210>

___________________________________________________



Comment 3 Fedora Update System 2007-10-12 20:02:29 UTC
rpm-4.4.2.2-2.fc7 has been pushed to the Fedora 7 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update rpm'

Comment 4 Fedora Update System 2007-10-24 07:13:50 UTC
rpm-4.4.2.2-2.fc7 has been pushed to the Fedora 7 stable repository.  If problems still persist, please make note of it in this bug report.


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