Bug 165166
| Summary: | installing and uninstalling ruby-libs.i386.rpm on ia64 ends with scriplett error | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 4 | Reporter: | John Poelstra <poelstra> |
| Component: | ruby | Assignee: | Akira TAGOH <tagoh> |
| Status: | CLOSED NOTABUG | QA Contact: | Bill Huang <bhuang> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | 4.0 | ||
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | ia64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2005-12-27 03:26:50 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
|
Description
John Poelstra
2005-08-04 19:48:31 UTC
Discovered issue while testing http://porkchop.redhat.com/errata/showrequest.cgi?advisory=2005:543 Ok, I tried this again: .qa.[root@ia64-4AS ~]# rpm -ivh /mnt/redhat/beehive/comps/dist/4E/ruby/1.8.1-7.EL4.0/ia64/* Preparing... ########################################### [100%] 1:ruby-libs ########################################### [ 13%] 2:ruby ########################################### [ 25%] 3:irb ########################################### [ 38%] 4:ruby-debuginfo ########################################### [ 50%] 5:ruby-devel ########################################### [ 63%] 6:ruby-docs ########################################### [ 75%] 7:ruby-mode ########################################### [ 88%] 8:ruby-tcltk ########################################### [100%] .qa.[root@ia64-4AS ~]# rpm -ivh /mnt/redhat/beehive/comps/dist/4E/ruby/1.8.1-7.EL4.0/i386/ruby-libs-1.8.1-7.EL4.0.i386.rpm Preparing... ########################################### [100%] 1:ruby-libs ########################################### [100%] *** glibc detected *** double free or corruption (fasttop): 0x6000000000044e90 *** error: %post(ruby-libs-1.8.1-7.EL4.0.i386) scriptlet failed, exit status 0 .qa.[root@ia64-4AS ~]# rpm -q --scripts ruby-libs.i386 postinstall scriptlet (using /bin/sh): /sbin/ldconfig postuninstall scriptlet (using /bin/sh): /sbin/ldconfig So I should reassign this to bash or glibc then? erm, I've tracked this problem down. this was because of lacking of ia32el
package. here is what I've checked things:
.qa.[root@ia64-4AS ~]# rpm -q bash
bash-3.0-19.2.ia64
bash-3.0-19.2.i386
.qa.[root@ia64-4AS ~]# /emul/ia32-linux/bin/bash
-bash: /emul/ia32-linux/bin/bash: cannot execute binary file
.qa.[root@ia64-4AS ~]# file /emul/ia32-linux/bin/bash
/emul/ia32-linux/bin/bash: ELF 32-bit LSB executable, Intel 80386, version 1
(SYSV), for GNU/Linux 2.2.5, dynamically linked (uses shared libs), stripped
.qa.[root@ia64-4AS ~]# rpm -qf /emul/ia32-linux
file /emul/ia32-linux is not owned by any package
.qa.[root@ia64-4AS ~]# rpm -q ia32el
package ia32el is not installed
.qa.[root@ia64-4AS ~]# rpm -ivh
/mnt/redhat/beehive/comps/dist/4E-lacd-U1/ia32el/1.2-3/ia64/ia32el-1.2-3.ia64.rpm
Preparing... ########################################### [100%]
1:ia32el ########################################### [100%]
.qa.[root@ia64-4AS ~]# /emul/ia32-linux/bin/bash
.qa.[root@ia64-4AS ~]# ldconfig
.qa.[root@ia64-4AS ~]# exit
.qa.[root@ia64-4AS ~]# rpm -e ruby-debuginfo ruby-devel ruby-libs.i386 ruby-mode
ruby-libs.ia64 ruby-tcltk ruby irb
.qa.[root@ia64-4AS ~]# rpm -qa | grep ruby
ruby-docs-1.8.1-7.EL4.0.ia64
.qa.[root@ia64-4AS ~]# rpm -e ruby-docs
.qa.[root@ia64-4AS ~]# rpm -ivh
/mnt/redhat/beehive/comps/dist/4E/ruby/1.8.1-7.EL4.0/ia64/* Preparing...
########################################### [100%]
1:ruby-libs ########################################### [ 13%]
2:ruby ########################################### [ 25%]
3:irb ########################################### [ 38%]
4:ruby-debuginfo ########################################### [ 50%]
5:ruby-devel ########################################### [ 63%]
6:ruby-docs ########################################### [ 75%]
7:ruby-mode ########################################### [ 88%]
8:ruby-tcltk ########################################### [100%]
.qa.[root@ia64-4AS ~]# rpm -ivh
/mnt/redhat/beehive/comps/dist/4E/ruby/1.8.1-7.EL4.0/i386/ruby-libs-1.8.1-7.EL4.0.i386.rpm
Preparing... ########################################### [100%]
1:ruby-libs ########################################### [100%]
So this is not a bug at all.
No, this is a bug. You should have a dependency requirement for ia32el if it is "lacking" at the time of install. Huh? How? It's impossible since ix86 packages are shared for ix86 itself and ia64 architectures now and ia32el doesn't work for ix86 and it'd rather not necessary for ix86 at all. or Are you saying there is any ix86 packages which requires ia32el? AFAICS there is not. It should be also impossible because ia32el is in LACD. the package in main can't makes any dependencies other than its area. You tell me :-) You said the problem was lack of ia32el in comment #3. Usually when a package is necessary for something else to work correctly it is considered a dependency. Based on what I understand you to be saying, ia32el is "required" to avoid "error: %post(ruby-libs-1.8.1-7.EL4.0.i386) scriptlet failed." Is this not the case? Yes. and I also said it won't be able to be required due to comment #5 and comment #6 reasons. Why I asked you is you may know a lot about the multilib stuff than me, because of your job. you should see the same problem when you removed ia32el from ia64 machine, and trying to install i386 library anything else. e.g. .qa.[root@ia64-4AS ~]# rpm -qa | grep i386 | wc -l 202 .qa.[root@ia64-4AS ~]# rpm -q --whatrequires ia32el no package requires ia32el .qa.[root@ia64-4AS ~]# for i in `rpm -ql ia32el`; do rpm -q --whatrequires $i; done no package requires /etc/rc.d/init.d/ia32el no package requires /usr/lib/ia32el no package requires /usr/lib/ia32el/ia32exec.bin no package requires /usr/lib/ia32el/is_ia32el no package requires /usr/lib/ia32el/libia32x.so no package requires /usr/lib/ia32el/suid_libia32x.so no package requires /usr/share/doc/ia32el-1.2 no package requires /usr/share/doc/ia32el-1.2/COPYING no package requires /usr/share/doc/ia32el-1.2/COPYING.LIBC no package requires /usr/share/doc/ia32el-1.2/EULA Although there is a lot of i386 packages installed but no packages required neither ia32el nor the files in ia32el. it means you can remove ia32el without any complaints if you like. Closing this as NOTABUG again. |