Bug 702590

Summary: sesame service is not LSB compliant
Product: Red Hat Enterprise MRG Reporter: Frantisek Reznicek <freznice>
Component: sesameAssignee: grid-maint-list <grid-maint-list>
Status: CLOSED WONTFIX QA Contact: MRG Quality Engineering <mrgqe-bugs>
Severity: medium Docs Contact:
Priority: low    
Version: 2.0CC: esammons, matt, sgraf
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-05-26 19:12:09 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:
Bug Depends On: 788129, 788158    
Bug Blocks:    

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.