Bug 296351 - chkconfig resolves LSB dependencies to latest service when duplicate Provides exist
chkconfig resolves LSB dependencies to latest service when duplicate Provides...
Status: CLOSED WONTFIX
Product: Red Hat Enterprise Linux 4
Classification: Red Hat
Component: chkconfig (Show other bugs)
4.0
All Linux
low Severity low
: ---
: ---
Assigned To: Bill Nottingham
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2007-09-19 10:03 EDT by Harrison Fisk
Modified: 2014-03-16 23:08 EDT (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2007-09-19 10:50:57 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)
Example init.d script which gets set to S99/K01 due to $network dependency (10.62 KB, application/octet-stream)
2007-09-19 10:03 EDT, Harrison Fisk
no flags Details

  None (edit)
Description Harrison Fisk 2007-09-19 10:03:17 EDT
Description of problem:

When chkconfig is deciding on the priority order using LSB dependency checking,
it uses the latest dependency value if there are multiple services that
'Provides' the dependency.

For example:

If you have a service that depends on $network, $network is provided by two
different services by default on RHEL 4, 'network' and 'NetworkManager'.

network has: chkconfig: 2345 10 90
NetworkManager has: chkconfig: 345 98 02

Due to this bug any service with a dependency on $network would end up as 99 01,
which causes other things that have a dependency on that service to have a problem.

chkconfig should resolve the dependency on the first service, not the last one
to prevent this.

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

1.3.13.4

How reproducible:

With the appropriate setup, it occurs every time.

Steps to Reproduce:
1.  Copy the attached file to /etc/init.d/
2.  Verify you have both network and NetworkManager on the system
3.  Run chkconfig --add mysql
  
Actual results:

S99mysql and K01mysql are created in the appropriate places.

Expected results:

Earlier starting and later stopping.  Without NetworkManager, I get K36mysql and
S64mysql.

Additional info:
Comment 1 Harrison Fisk 2007-09-19 10:03:17 EDT
Created attachment 199571 [details]
Example init.d script which gets set to S99/K01 due to $network dependency
Comment 2 Bill Nottingham 2007-09-19 10:50:57 EDT
This is fixed in a later update by having NetworkManager no longer provide
$network. - we're not planning on changing chkconfig for RHEL 4 at this time.

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