Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 79734 - rpm segfaults when installing mysql-server
Summary: rpm segfaults when installing mysql-server
Keywords:
Status: CLOSED WORKSFORME
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: rpm
Version: 8.0
Hardware: i386
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Jeff Johnson
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2002-12-16 12:33 UTC by Ian Collier
Modified: 2008-05-01 15:38 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2003-02-26 17:19:32 UTC


Attachments (Terms of Use)

Description Ian Collier 2002-12-16 12:33:41 UTC
Description of problem:

rpm segfaults when asked to install mysql-server-3.23.52-3.i386.rpm
if the mysql user is present in the NIS passwd file but not in the local
passwd file.  The mysql-server package I tried to install is the
one on the Red Hat 8.0 installation media (also tried rebuilding
from the SRPM, but attempting to install that gave the same result).

Version-Release number of selected component (if applicable):
rpm-4.1-1.06

How reproducible:
Always, until I fixed the problem manually by temporarily excluding the user
from the NIS passwd file; since then it can't be reproduced because the user
has been successfully registered in the local passwd file.

Steps to Reproduce:
1. Install a Red Hat 8.0 machine as a NIS client, but don't install mysql.
   The passwd file obtained from NIS contains the following entry:
   mysql:*:65003:65003:Pseudo-account for mysql package:/nodir:/bin/false
   The nsswitch.conf file says "passwd: compat" and the local passwd file
   ends with "+:*:::::/bin/false".  There is no mysql user in the local
   passwd file.
2. Install the package mysql-3.23.52 and anything else necessary for
   mysql-server-3.23.52.
3. Type: rpm -ivh mysql-server-3.23.52-3.i386.rpm
    
Actual results:
Preparing...                ########################################### [100%]
Segmentation fault

Expected results:
Package should be installed.

Comment 1 Jeff Johnson 2002-12-17 20:30:35 UTC
Are you using LDAP passwords by any chance? If so
you need to run nscd. In fact, are you running
nscd?

Comment 2 Ian Collier 2002-12-18 13:35:44 UTC
Afraid I don't know what "LDAP passwords" is.  There is no LDAP server on the
network.  Passwords of local users are stored in /etc/shadow; those of NIS users
are inline in the NIS passwd file.  The "mysql" user in the NIS domain has no
password (password field is "*").

nscd is installed but not referenced in any runlevel.

imc

Comment 3 Jeff Johnson 2002-12-23 21:43:05 UTC
Sanity check:

What happens if you start nscd ("service nscd start")?

Comment 4 Ian Collier 2003-02-26 17:14:12 UTC
Apologies for the delay, but it wasn't possible to test on the original
machine as it was required to be kept up and running.

> What happens if you start nscd ("service nscd start")?

# service nscd start
Starting nscd:                                             [  OK  ]
# rpm -ivh mysql-server-3.23.54a-4.i386.rpm 
warning: mysql-server-3.23.54a-4.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing...                ########################################### [100%]
warning: group mysql does not exist - using root
warning: group mysql does not exist - using root
warning: group mysql does not exist - using root
   1:mysql-server           ########################################### [100%]

So this did avoid the segfault and install the package.

Thinks... could it be the missing group that is the problem?
Answer: nope - still segfaults if nscd is not running even when the group
exists.  Installation is successful without warnings if nscd is running.

Comment 5 Jeff Johnson 2003-02-26 17:19:32 UTC
If problem depends on whether nscd is running, then
this is almost certainly the LDAP lookup problem which
affects statically linked binaries like /bin/rpm.

BTW, doing
    rpm --import /usr/share/doc/rpm-4*/RPM-GPG-KEY
will make the NOKEY warning go away.


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