Bug 1603220

Summary: glusterfs-server depends on deprecated liblvm2app
Product: [Community] GlusterFS Reporter: Marian Csontos <mcsontos>
Component: coreAssignee: Shyamsundar <srangana>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: mainlineCC: amukherj, atumball, bugs, srangana, vbellur
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: glusterfs-6.x Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-05-14 09:24:27 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Marian Csontos 2018-07-19 13:29:47 UTC
liblvm2app was deprecated in RHEL-7, and support will be dropped in next major release. glusterfs-server(not sure what component that is) depends on the library.

Alternatives to the deprecated functionality:

*lvmdbusd*
- requires Python3 and D-Bus - so is not available during early boot,
- lacking in documentation, so a TODO on our plate.

*using CLI directly*
- for querying lvs/pvs/vgs there is now JSON formatted output,

*libblockdev*
- used by anaconda, using either CLI or D-Bus daemon backend - IMO for C programs this may be the best alternative - it is already entrenched in Fedora and next RHEL versions, and is actively maintained.

Comment 1 Shyamsundar 2018-07-25 00:41:30 UTC
Usage of lvm2app.h header and libraries are only in the BD xlator. This is orphaned in the MAINTAINERS file and currently not in use.

Ideal way forward is to mark this xlator "Obselete" and remove it from the source tree, thus resolving this issue as well.

@amarts @vbellur @atin thoughts?

Usage of lvm2app.h header is in the following files:
1) glusterfs/xlators/storage/bd/src/<3 files in here>

2) glusterfs/xlators/mgmt/glusterd/src/glusterd-handler.c
glusterfs/xlators/mgmt/glusterd/src/glusterd-utils.c
glusterfs/xlators/mgmt/glusterd/src/glusterd-volume-ops.c: Conditional include of the header if BD is being compiled.

Comment 2 Shyamsundar 2018-07-25 00:43:16 UTC
Announcement to obsolete BD xlator is already in the lists: https://lists.gluster.org/pipermail/gluster-users/2018-July/034400.html

and, we do not have any user getting back on this, so proceeding with the same to resolve this issue.

Comment 3 Amar Tumballi 2018-07-25 04:39:35 UTC
(In reply to Shyamsundar from comment #2)
> Announcement to obsolete BD xlator is already in the lists:
> https://lists.gluster.org/pipermail/gluster-users/2018-July/034400.html
> 
> and, we do not have any user getting back on this, so proceeding with the
> same to resolve this issue.

Agree with Shyam here. The 'glusterfs-server' RPM which would ship with RHEL after liblvm2app removed, will have BD xlator removed in the codebase.

Comment 4 Amar Tumballi 2018-10-24 10:08:42 UTC
Patch https://review.gluster.org/20702 is expected to handle this.