Bug 994619 - 'redhat-storage-server' package is removable without any dependency on any other Red Hat Storage server package
'redhat-storage-server' package is removable without any dependency on any ot...
Status: CLOSED EOL
Product: Red Hat Gluster Storage
Classification: Red Hat
Component: redhat-storage-server (Show other bugs)
2.1
All Linux
low Severity low
: ---
: ---
Assigned To: Dusmant
Sachidananda Urs
: Reopened
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2013-08-07 11:55 EDT by Rejy M Cyriac
Modified: 2016-02-17 19:15 EST (History)
11 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2015-12-03 12:19:57 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Rejy M Cyriac 2013-08-07 11:55:21 EDT
Description of problem:
The 'redhat-storage-server' package can be used as a 'pull-rope' to install packages required for Red Hat Storage (RHS), when installing the system over the network, such as from Red Hat (RH) Satellite server. It also provides the RHS identifier file '/etc/redhat-storage-release'.

It appears that it is possible to remove the 'redhat-storage-server' package without any dependency on any other Red Hat Storage server package. This could make the RHS system unidentifiable, as well as break the files and settings provided by the 'redhat-storage-server' package.

-------------------------------------------------------------------

# rpm -q redhat-storage-server
redhat-storage-server-2.1.0-1.el6rhs.noarch

# yum remove redhat-storage-server
Loaded plugins: product-id, rhnplugin, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
This system is receiving updates from RHN Classic or RHN Satellite.
Setting up Remove Process
Resolving Dependencies
--> Running transaction check
---> Package redhat-storage-server.noarch 0:2.1.0-1.el6rhs will be erased
--> Finished Dependency Resolution

Dependencies Resolved

===================================================================================================================================================================================================================
 Package                                               Arch                                   Version                                          Repository                                                     Size
===================================================================================================================================================================================================================
Removing:
 redhat-storage-server                                 noarch                                 2.1.0-1.el6rhs                                   @rhel-x86_64-server-6-rhs-2.1                                  12 k

Transaction Summary
===================================================================================================================================================================================================================
Remove        1 Package(s)

Installed size: 12 k
Is this ok [y/N]:

-------------------------------------------------------------------

...

-------------------------------------------------------------------

# rpm --test -evv redhat-storage-server
D: loading keyring from pubkeys in /var/lib/rpm/pubkeys/*.key
D: couldn't find any keys in /var/lib/rpm/pubkeys/*.key
D: loading keyring from rpmdb
D: opening  db environment /var/lib/rpm cdb:mpool:joinenv
D: opening  db index       /var/lib/rpm/Packages rdonly mode=0x0
D: locked   db index       /var/lib/rpm/Packages
D: opening  db index       /var/lib/rpm/Name rdonly mode=0x0
D:  read h#     408 Header sanity check: OK
D: added key gpg-pubkey-fd431d51-4ae0493b to keyring
D:  read h#     409 Header sanity check: OK
D: added key gpg-pubkey-2fa658e0-45700c69 to keyring
D: Using legacy gpg-pubkey(s) from rpmdb
D:  read h#     527 Header SHA1 digest: OK (ef33575c004a54efb930fc19969d1b62f621380b)
D: ========== --- redhat-storage-server-2.1.0-1.el6rhs noarch/linux 0x0
D: opening  db index       /var/lib/rpm/Requirename rdonly mode=0x0
D: ========== recording tsort relations
D: ========== tsorting packages (order, #predecessors, #succesors, tree, depth)
D:     0    0    0    0    1   -redhat-storage-server-2.1.0-1.el6rhs.noarch
D: erasing packages
D: sanity checking 1 elements
D: computing 13 file fingerprints
D: computing file dispositions
D: opening  db index       /var/lib/rpm/Basenames rdonly mode=0x0
D: 0x0000fd00     4096     13951989      3802335 /
D: ========== +++ redhat-storage-server-2.1.0-1.el6rhs noarch-linux 0x0
D:     erase: redhat-storage-server-2.1.0-1.el6rhs has 13 files, test = 1
D: closed   db index       /var/lib/rpm/Requirename
D: closed   db index       /var/lib/rpm/Basenames
D: closed   db index       /var/lib/rpm/Name
D: closed   db index       /var/lib/rpm/Packages
D: closed   db environment /var/lib/rpm

-------------------------------------------------------------------

Version-Release number of selected component (if applicable):
redhat-storage-server-2.1.0-1.el6rhs.noarch
RHS 2.1

How reproducible:


Steps to Reproduce:
1.Install RHS over the network, from RH Satellite server, using the redhat-storage-server package as the 'pull-rope'
2.Once the RHS system is installed, and rebooted, try to remove the redhat-storage-server package, using yum or rpm command

Actual results:
It is possible to remove the 'redhat-storage-server' package without any dependency on any other Red Hat Storage server package. This could make the RHS system unidentifiable, as well as break the files and settings provided by the 'redhat-storage-server' package.

Expected results:
It should not be possible to remove the 'redhat-storage-server' package without removing the other major Red Hat Storage server packages along with it. This would ensure that there is no break of files and settings provided, and that it is no longer an RHS system.

Additional info:
Comment 2 Anthony Towns 2013-08-08 21:55:08 EDT
Why is this marked as a test blocker? An admin could run "rm -rf /etc" as well and end up with an unsupported system...
Comment 3 Rejy M Cyriac 2013-08-12 02:11:51 EDT
An Admin may choose to destroy the system, but I believe that when an RHS package is being un-installed, it must be ensured that a good clean-up is done, and no artifacts are left behind. 

If 'redhat-storage-server' brings in baggage when installed, I would
expect it to leave with at least some of the important baggage, when the package is un-installed. At the very least, the removal of the 'redhat-storage-server' package should remove all the glusterfs* rpms along with it.
Comment 4 Sayan Saha 2013-08-21 20:34:27 EDT
Adjusted the priority to low.
Comment 5 Sachidananda Urs 2013-08-22 06:04:17 EDT
If we install and uninstall a package on a server, then it should leave the server in the same state. In our case here if we install and remove redhat-storage-server we end up leaving behind around 20+ packages. This should not be the case.
Comment 6 Anthony Towns 2013-08-22 16:54:02 EDT
Moved to redhat-storage-server package.
Comment 8 Bala.FA 2013-11-27 00:45:05 EST
I don't see any of meta package does this ie removes dependencies on removal of meta package.  The bug came in the way like yum groups but rpm doesn't have such feature though.

I feel its not a bug.
Comment 9 Rejy M Cyriac 2013-11-28 01:21:31 EST
(In reply to Bala.FA from comment #8)
> I don't see any of meta package does this ie removes dependencies on removal
> of meta package.  The bug came in the way like yum groups but rpm doesn't
> have such feature though.
> 
> I feel its not a bug.

My concern is that since the redhat-storage-server package is what provides identity and version information to the Red Hat Storage Server system, the removal of this package removes this identity, and so it should also be ensured that the system should also no longer functionally be a Red Hat Storage Server.

I will look at it from different angles, and consider other Red Hat layered products, and get back with more information on this, and hopefully suggestions on how the objective may be achieved. Please do got close this BZ now.
Comment 10 Rejy M Cyriac 2013-12-04 07:51:43 EST
(In reply to Bala.FA from comment #8)
> I don't see any of meta package does this ie removes dependencies on removal
> of meta package.  The bug came in the way like yum groups but rpm doesn't
> have such feature though.
> 
> I feel its not a bug.

The RHEV Manager 3.2 product is a layered one over RHEL 6.3 or above, and it is installed by instructing yum to install a single package called as rhevm. On a RHEL 6.5 basic server installation, the install of this package calls in around 331 packages as dependencies from various channels, to have the final RHEV Manager installed.

On a check of the yum groups available, I see that on subscribing the system to the 'rhel-x86_64-server-6-rhevm-3.2' child channel of the 'rhel-x86_64-server-6' base channel, a special package group called as 'RHEV Manager' is made available. It has only the following packages associated with it.

Group: RHEV Manager
 Mandatory Packages:
   otopi
   ovirt-host-deploy
   rhevm
   rhevm-backend
   rhevm-config
   rhevm-dbscripts
   rhevm-genericapi
   rhevm-image-uploader
   rhevm-iso-uploader
   rhevm-log-collector
   rhevm-notification-service
   rhevm-restapi
   rhevm-setup
   rhevm-tools-common
   rhevm-userportal
   rhevm-webadmin-portal

If the 'RHEV Manager' package group is chosen to be installed, the presence of the rhevm package as a mandatory package leads to the entire package set, as observed earlier, being called in.

----------------

It is not possible to remove the rhevm package alone.

Removal of the rhevm package leads to the removal of the following packages.

 rhevm                                                    
 redhat-support-plugin-rhev                               
 rhevm-backend                                            
 rhevm-config                                             
 rhevm-dbscripts                                          
 rhevm-genericapi                                         
 rhevm-notification-service                               
 rhevm-restapi                                            
 rhevm-setup                                              
 rhevm-spice-client-x64-cab                               
 rhevm-spice-client-x86-cab                               
 rhevm-tools-common                                       
 rhevm-userportal                                         
 rhevm-webadmin-portal

If the 'RHEV Manager' group is chosen to be removed, the following packages are removed, an extra of 7 packages from the rhevm removal.

 otopi                                                    
 ovirt-host-deploy                                        
 rhevm                                                    
 rhevm-backend                                            
 rhevm-config                                             
 rhevm-dbscripts                                          
 rhevm-genericapi                                         
 rhevm-image-uploader                                     
 rhevm-iso-uploader                                       
 rhevm-log-collector                                      
 rhevm-notification-service                               
 rhevm-restapi                                            
 rhevm-setup                                              
 rhevm-tools-common                                       
 rhevm-userportal                                         
 rhevm-webadmin-portal                                    
 otopi-java                                               
 ovirt-host-deploy-java                                   
 redhat-support-plugin-rhev                               
 rhevm-spice-client-x64-cab                               
 rhevm-spice-client-x86-cab

----------------

Unlike RHSS, the RHEV Manager product does not have the extra baggage of ISO spins. And there is no special identity or version file for RHEV Manager, like the '/etc/redhat-storage-release' file for RHSS.

----------------

So based on this comparison, I believe that the redhat-storage-server package must not be removable by itself, but should also remove RHSS specific packages as well. Also, we may consider having a 'Red Hat Storage Server' package group associated with the rhs 2.1 child channel, which could be used for installing, and un-installing the Red Hat Storage Server.
Comment 16 Vivek Agarwal 2015-12-03 12:19:57 EST
Thank you for submitting this issue for consideration in Red Hat Gluster Storage. The release for which you requested us to review, is now End of Life. Please See https://access.redhat.com/support/policy/updates/rhs/

If you can reproduce this bug against a currently maintained version of Red Hat Gluster Storage, please feel free to file a new report against the current release.

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