[Bugs] [Bug 1310437] New: rsyslog can't be completely removed due to dependency in libglusterfs

bugzilla at redhat.com bugzilla at redhat.com
Sun Feb 21 15:28:20 UTC 2016


https://bugzilla.redhat.com/show_bug.cgi?id=1310437

            Bug ID: 1310437
           Summary: rsyslog can't be completely removed due to dependency
                    in libglusterfs
           Product: GlusterFS
           Version: mainline
         Component: build
          Keywords: EasyFix, Triaged
          Assignee: bugs at gluster.org
          Reporter: ndevos at redhat.com
                CC: bugs at gluster.org, kkeithle at redhat.com
            Blocks: 1309741



Description of problem:
rsyslog can't be completely removed due to dependency in glusterfs-libs. It
depends on rsyslog-mmjsonparse, which remains on the system even if rsyslog is
deleted. Three is no direct dependency on rsyslog / mmjsonparse, just an
example config: /etc/rsyslog.d/gluster.conf.example
It is a problem, when someone wants to replace rsyslog with an alternative
solution, like syslog-ng

Version-Release number of selected component (if applicable):
glusterfs-libs-3.7.1-16.el7.x86_64

How reproducible:
always

Steps to Reproduce:
Try to remove rsyslog-mmjsonparse:

[root at localhost ~]# yum erase rsyslog-mmjsonparse-7.4.7-12.el7.x86_64
Loaded plugins: langpacks, product-id, search-disabled-repos,
subscription-manager
Resolving Dependencies
--> Running transaction check
---> Package rsyslog-mmjsonparse.x86_64 0:7.4.7-12.el7 will be erased
--> Processing Dependency: rsyslog-mmjsonparse for package:
glusterfs-libs-3.7.1-16.el7.x86_64
--> Running transaction check
---> Package glusterfs-libs.x86_64 0:3.7.1-16.el7 will be erased
--> Processing Dependency: glusterfs-libs = 3.7.1-16.el7 for package:
glusterfs-3.7.1-16.el7.x86_64
--> Processing Dependency: libgfrpc.so.0()(64bit) for package:
glusterfs-3.7.1-16.el7.x86_64
--> Processing Dependency: libgfrpc.so.0()(64bit) for package:
glusterfs-client-xlators-3.7.1-16.el7.x86_64
--> Processing Dependency: libgfrpc.so.0()(64bit) for package:
libvirt-daemon-driver-storage-1.2.17-13.el7_2.2.x86_64
--> Processing Dependency: libgfrpc.so.0()(64bit) for package:
glusterfs-api-3.7.1-16.el7.x86_64
--> Processing Dependency: libgfrpc.so.0()(64bit) for package:
10:qemu-kvm-1.5.3-105.el7_2.3.x86_64
--> Processing Dependency: libgfrpc.so.0()(64bit) for package:
10:qemu-img-1.5.3-105.el7_2.3.x86_64
--> Processing Dependency: libgfxdr.so.0()(64bit) for package:
glusterfs-3.7.1-16.el7.x86_64
--> Processing Dependency: libgfxdr.so.0()(64bit) for package:
glusterfs-client-xlators-3.7.1-16.el7.x86_64
--> Processing Dependency: libgfxdr.so.0()(64bit) for package:
libvirt-daemon-driver-storage-1.2.17-13.el7_2.2.x86_64
--> Processing Dependency: libgfxdr.so.0()(64bit) for package:
glusterfs-api-3.7.1-16.el7.x86_64
--> Processing Dependency: libgfxdr.so.0()(64bit) for package:
10:qemu-kvm-1.5.3-105.el7_2.3.x86_64
--> Processing Dependency: libgfxdr.so.0()(64bit) for package:
10:qemu-img-1.5.3-105.el7_2.3.x86_64
--> Processing Dependency: libglusterfs.so.0()(64bit) for package:
libvirt-daemon-driver-storage-1.2.17-13.el7_2.2.x86_64
--> Processing Dependency: libglusterfs.so.0()(64bit) for package:
glusterfs-3.7.1-16.el7.x86_64
--> Processing Dependency: libglusterfs.so.0()(64bit) for package:
glusterfs-client-xlators-3.7.1-16.el7.x86_64
--> Processing Dependency: libglusterfs.so.0()(64bit) for package:
glusterfs-api-3.7.1-16.el7.x86_64
--> Running transaction check
---> Package glusterfs.x86_64 0:3.7.1-16.el7 will be erased
---> Package glusterfs-api.x86_64 0:3.7.1-16.el7 will be erased
---> Package glusterfs-client-xlators.x86_64 0:3.7.1-16.el7 will be erased
---> Package libvirt-daemon-driver-storage.x86_64 0:1.2.17-13.el7_2.2 will be
erased
--> Processing Dependency: libvirt-daemon-driver-storage = 1.2.17-13.el7_2.2
for package: libvirt-daemon-kvm-1.2.17-13.el7_2.2.x86_64
---> Package qemu-img.x86_64 10:1.5.3-105.el7_2.3 will be erased
---> Package qemu-kvm.x86_64 10:1.5.3-105.el7_2.3 will be erased
--> Running transaction check
---> Package libvirt-daemon-kvm.x86_64 0:1.2.17-13.el7_2.2 will be erased
--> Processing Dependency: libvirt-daemon-kvm for package:
gnome-boxes-3.14.3.1-7.el7.x86_64
--> Running transaction check
---> Package gnome-boxes.x86_64 0:3.14.3.1-7.el7 will be erased
--> Processing Dependency: /usr/bin/qemu-img for package:
libvirt-daemon-driver-qemu-1.2.17-13.el7_2.2.x86_64
--> Restarting Dependency Resolution with new changes.
--> Running transaction check
---> Package libvirt-daemon-driver-qemu.x86_64 0:1.2.17-13.el7_2.2 will be
erased
--> Finished Dependency Resolution

Dependencies Resolved

==============================================================================================================================================================================================
 Package                                                Arch                   
        Version                                        Repository              
                         Size
==============================================================================================================================================================================================
Removing:
 rsyslog-mmjsonparse                                    x86_64                 
        7.4.7-12.el7                                   @rhel-7-server-eus-rpms 
                         15 k
Removing for dependencies:
 glusterfs                                              x86_64                 
        3.7.1-16.el7                                   @rhel-7-server-eus-rpms 
                        1.6 M
 glusterfs-api                                          x86_64                 
        3.7.1-16.el7                                   @rhel-7-server-eus-rpms 
                        141 k
 glusterfs-client-xlators                               x86_64                 
        3.7.1-16.el7                                   @rhel-7-server-eus-rpms 
                        3.2 M
 glusterfs-libs                                         x86_64                 
        3.7.1-16.el7                                   @rhel-7-server-eus-rpms 
                        1.1 M
 gnome-boxes                                            x86_64                 
        3.14.3.1-7.el7                                 @rhel-7-server-eus-rpms 
                        4.3 M
 libvirt-daemon-driver-qemu                             x86_64                 
        1.2.17-13.el7_2.2                              @rhel-7-server-eus-rpms 
                        1.3 M
 libvirt-daemon-driver-storage                          x86_64                 
        1.2.17-13.el7_2.2                              @rhel-7-server-eus-rpms 
                        549 k
 libvirt-daemon-kvm                                     x86_64                 
        1.2.17-13.el7_2.2                              @rhel-7-server-eus-rpms 
                        0.0  
 qemu-img                                               x86_64                 
        10:1.5.3-105.el7_2.3                           @rhel-7-server-eus-rpms 
                        2.2 M
 qemu-kvm                                               x86_64                 
        10:1.5.3-105.el7_2.3                           @rhel-7-server-eus-rpms 
                        5.6 M

Transaction Summary
==============================================================================================================================================================================================
Remove  1 Package (+10 Dependent packages)

Installed size: 20 M
Is this ok [y/N]: n


Actual results:
Not just rsyslog-mmjsonparse, but the whole kvm virtualization stack is also
removed in the action.

Expected results:
If we erase rsyslog-mmjsonparse, it does not take any other software with it.
For that rsyslog-mmjsonparse should not be among the requires of
glusterfs-libs, like it is now:

[root at localhost ~]# rpm -q --requires glusterfs-libs
/bin/sh
/bin/sh
libc.so.6()(64bit)
libc.so.6(GLIBC_2.10)(64bit)
libc.so.6(GLIBC_2.14)(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3)(64bit)
libc.so.6(GLIBC_2.3.2)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libc.so.6(GLIBC_2.8)(64bit)
libcrypto.so.10()(64bit)
libcrypto.so.10(libcrypto.so.10)(64bit)
libdl.so.2()(64bit)
libdl.so.2(GLIBC_2.2.5)(64bit)
libgfrpc.so.0()(64bit)
libgfxdr.so.0()(64bit)
libglusterfs.so.0()(64bit)
libm.so.6()(64bit)
libpthread.so.0()(64bit)
libpthread.so.0(GLIBC_2.2.5)(64bit)
libpthread.so.0(GLIBC_2.3.2)(64bit)
librt.so.1()(64bit)
librt.so.1(GLIBC_2.2.5)(64bit)
libuuid.so.1()(64bit)
libuuid.so.1(UUID_1.0)(64bit)
libz.so.1()(64bit)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rsyslog-mmjsonparse
rtld(GNU_HASH)
rpmlib(PayloadIsXz) <= 5.2-1



Additional info:

If needed, I can also provide a sample syslog-ng configuration for JSON
parsing.

(On CentOS it's even worse, as rsyslog-mmjsonparse also depends on rsyslog, so
rsyslog practically can't be deleted at all)


--- Additional comment from Tomas Heinrich on 2016-02-18 17:46:23 CET ---

>From the point of rsyslog, I think this dependency is unnecessary;
The file is just an example and not used by default. The only requirement for
the rsyslog package is to have the /etc/rsyslog.d/ dir where the file is
currently installed.

I think it'd be better to move the file somewhere into /usr/share/..., add
another example for syslog-ng and add instructions to install the respective
packages.


Referenced Bugs:

https://bugzilla.redhat.com/show_bug.cgi?id=1309741
[Bug 1309741] rsyslog can't be completely removed due to dependency in
libglusterfs
-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.


More information about the Bugs mailing list