Bug 702590 - sesame service is not LSB compliant
Summary: sesame service is not LSB compliant
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: sesame
Version: 2.0
Hardware: Unspecified
OS: Unspecified
low
medium
Target Milestone: ---
: ---
Assignee: grid-maint-list
QA Contact: MRG Quality Engineering
URL:
Whiteboard:
Depends On: 788129 788158
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-05-06 08:57 UTC by Frantisek Reznicek
Modified: 2016-05-26 19:12 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-05-26 19:12:09 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 788129 0 low CLOSED service sesame start missing pid file 2021-02-22 00:41:40 UTC
Red Hat Bugzilla 788158 0 low CLOSED sesame init.d script does not implement force-reload 2021-02-22 00:41:40 UTC
Red Hat Bugzilla 799242 0 low CLOSED sesame init.d script does not return error if /usr/bin/sesame is not executable 2021-02-22 00:41:40 UTC

Internal Links: 788129 788158 799242

Description Frantisek Reznicek 2011-05-06 08:57:31 UTC
Description of problem:

Sesame service is not LSB compliant.

There are folowing LSB compliance violations:
1] try-restart action missing, including add to sesame's usage
2] force-reload action missing, including add to sesame's usage
   (lf_case_service_force_reload)
3] after SIGKILL when sesame was running /var/run/sesame.pid should exist
   (lf_case_service_pid_check)
4] Bad exit code on invalid/empty action
   (lf_case_service_operations) 

The LSB compliance means:
https://fedoraproject.org/wiki/FCNewInit/Initscripts
https://fedoraproject.org/wiki/Packaging/SysVInitScript
https://bugzilla.redhat.com/show_bug.cgi?id=521669

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

How reproducible:
100%

Steps to Reproduce:
1. use qpid_test_initscript to check compliance
  
Actual results:
sesame service is not LSB compliant.

Expected results:
sesame service should be LSB compliant.

Additional info:
LSB compliance log (crosscheck with test case content):
:: [   LOG    ] :: Testing service sesame
:: [   LOG    ] :: >>>>>>>>> service start (lf_case_service_start)
:: [   PASS   ] ::  Non-running sesame expected.
:: [   PASS   ] ::  netstat check sesame stopped
:: [   PASS   ] ::  Service must start without problem.
:: [   PASS   ] ::  Then Status command
:: [   PASS   ] ::  netstat check sesame running
:: [   PASS   ] ::  Already started service
:: [   PASS   ] ::  Again status command
:: [   PASS   ] ::  netstat check sesame running
:: [   LOG    ] :: >>>>>>>>> service start - after kill (lf_case_service_start)
:: [   PASS   ] ::  Start sesame
:: [   PASS   ] ::  Kill service with SIGKILL
:: [   FAIL   ] :: File /var/run/sesame.pid should exist
:: [   PASS   ] :: File /var/lock/subsys/sesame should exist
:: [   PASS   ] ::  Already started service
:: [   PASS   ] ::  Status command
:: [   PASS   ] ::  netstat check sesame running
:: [   LOG    ] :: >>>>>>>>> service stop (lf_case_service_stop)
:: [   PASS   ] ::  Start sesame
:: [   PASS   ] :: Ready for test
:: [   PASS   ] ::  Stopping service
:: [   PASS   ] ::  Status of stopped service
:: [   PASS   ] ::  netstat check sesame stopped
:: [   PASS   ] ::  Stopping service again
:: [   PASS   ] ::  Status of stopped service
:: [   PASS   ] ::  netstat check sesame stopped
:: [   LOG    ] :: >>>>>>>>> service restart - when service not running (lf_case_service_restart)
:: [   PASS   ] ::  Stop sesame
:: [   PASS   ] ::  netstat check sesame stopped
:: [   PASS   ] ::  Restarting of service
:: [   PASS   ] ::  Status command
:: [   PASS   ] ::  netstat check sesame running
:: [   LOG    ] :: >>>>>>>>> service restart - with running service (lf_case_service_restart)
:: [   PASS   ] ::  Start sesame
:: [   PASS   ] ::  Status command
:: [   PASS   ] ::  netstat check sesame running
:: [   PASS   ] ::  Restarting of service
:: [   PASS   ] ::  Status command
:: [   PASS   ] ::  netstat check sesame running
:: [   LOG    ] :: >>>>>>>>> service force-reload - when not running (lf_case_service_force_reload)
:: [   PASS   ] ::  Stop sesame
:: [   PASS   ] ::  netstat check sesame stopped
:: [   PASS   ] ::  Restarting of service
:: [   FAIL   ] ::  Status command  (Expected 0, got 3)
:: [   FAIL   ] ::  netstat check sesame running (Expected 0, got 1)

=

:: [   LOG    ] :: >>>>>>>>> service force-reload - with running service (lf_case_service_force_reload)
:: [   PASS   ] ::  Start sesame
:: [   PASS   ] ::  Status command
:: [   PASS   ] ::  netstat check sesame running
:: [   PASS   ] ::  Restarting of service
:: [   PASS   ] ::  Status command
:: [   PASS   ] ::  netstat check sesame running


:: [   LOG    ] :: >>>>>>>>> service try-restart - when not running (lf_case_service_try_restart)
:: [   PASS   ] ::  Stop sesame
:: [   PASS   ] ::  netstat check sesame stopped
:: [   PASS   ] ::  Restarting of service
:: [   PASS   ] ::  Status command


:: [   PASS   ] ::  netstat check sesame running
:: [   LOG    ] :: >>>>>>>>> service try-restart - with running service (lf_case_service_try_restart)
:: [   PASS   ] ::  Start sesame
:: [   PASS   ] ::  Status command
:: [   PASS   ] ::  netstat check sesame running
:: [   PASS   ] ::  Restarting of service
:: [   PASS   ] ::  Status command
:: [   PASS   ] ::  netstat check sesame running
:: [   LOG    ] :: >>>>>>>>> pid file check (lf_case_service_pid_check)
:: [   PASS   ] ::  Start sesame
:: [   PASS   ] ::  netstat check sesame running
:: [   FAIL   ] :: File /var/run/sesame.pid should exist
:: [   PASS   ] :: Stop sesame
:: [   PASS   ] ::  netstat check sesame stopped
:: [   PASS   ] :: File /var/run/sesame.pid should not exist
:: [   PASS   ] :: Running 'echo 666666 > /var/run/sesame.pid'
:: [   PASS   ] ::  Existing pid file, but service not started
:: [   LOG    ] :: >>>>>>>>> lock file check (lf_case_service_lock_check)
:: [   PASS   ] ::  Start sesame
:: [   PASS   ] ::  netstat check sesame running
:: [   PASS   ] :: File /var/lock/subsys/sesame should exist
:: [   PASS   ] :: Stop sesame
:: [   PASS   ] ::  netstat check sesame stopped
:: [   PASS   ] :: File /var/run/sesame.pid should not exist
:: [   PASS   ] :: Running 'touch /var/lock/subsys/sesame'
:: [   PASS   ] ::  Existing lock file, but service not started
:: [   LOG    ] :: >>>>>>>>> service not executable/not installed (lf_case_service_not_exec)
:: [   PASS   ] ::  Change sesame privileges to 0444
:: [   FAIL   ] :: Can not find executable (Expected 1,5, got 0)
:: [   PASS   ] :: Change sesame privileges back to
:: [   LOG    ] :: >>>>>>>>> insufficient rights (lf_case_service_insufficient_rights)
:: [   PASS   ] ::  Starting service for restarting under nonpriv user
:: [   PASS   ] :: Insufficient rights, service restart under testuserqa user must fail
:: [   PASS   ] ::  Stopping service after restarting under nonpriv user
:: [   LOG    ] :: >>>>>>>>> test help - untested (lf_case_service_operations)
:: [   PASS   ] :: Action start expected to be part of usage line
:: [   PASS   ] :: Action stop expected to be part of usage line
:: [   PASS   ] :: Action restart expected to be part of usage line
:: [   PASS   ] :: Action condrestart expected to be part of usage line
:: [   FAIL   ] :: Action try-restart expected to be part of usage line (Expected 0, got 1)
:: [   FAIL   ] :: Action reload expected to be part of usage line (Expected 0, got 1)
:: [   FAIL   ] :: Action force-reload expected to be part of usage line (Expected 0, got 1)
:: [   PASS   ] :: Action status expected to be part of usage line
:: [   LOG    ] :: >>>>>>>>> operations (lf_case_service_operations)
:: [   PASS   ] ::  Service have to implement start function
:: [   PASS   ] ::  Service have to implement restart function
:: [   PASS   ] ::  Service have to implement status function
:: [   PASS   ] ::  Service have to implement stop function
:: [   PASS   ] ::  Service have to implement condrestart function
:: [   PASS   ] ::  Service have to implement try-restart function
:: [   PASS   ] ::  Service have to implement reload function
:: [   PASS   ] ::  Service have to implement force-reload function
:: [   LOG    ] :: >>>>>>>>> nonexistent operation (lf_case_service_operations)
:: [   FAIL   ] ::  Testing proper return code when nonexisting function (Expected 2,3, got 0)
:: [   LOG    ] :: >>>>>>>>> excess of operation arguments (lf_case_service_operations)
:: [   FAIL   ] ::  Bad operations added to service, must fail with proper return code (Expected 2, got 0)
:: [   LOG    ] :: >>>>>>>>> invalid arguments (lf_case_service_operations)
:: [   FAIL   ] ::  No operation added to service, must fail with proper return code (Expected 2, got 0)

Comment 3 Anne-Louise Tangring 2016-05-26 19:12:09 UTC
MRG-G is in maintenance only and only customer escalations will be addressed from this point forward. This issue can be re-opened if a customer escalation associated with this issue occurs.


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