Description of problem:
When attempting to create a snapshot using lvm2, the following error is produced:
# lvcreate -L2000M -s -n vmsnap /dev/VolGroup00/lv_root
Rounding up size to full physical extent 1.97 GiB
VolGroup00-vmsnap: event registration failed: 24717:3 libdevmapper-event-lvm2snapshot.so dlopen failed: /lib64/liblvm2cmd.so.2.02: symbol dm_event_handler_set_dmeventd_path, version Base not defined in file libdevmapper-event.so.1.02 with link time reference
VolGroup00/snapshot0: snapshot segment monitoring function failed.
Logical volume "vmsnap" created
LVM Kickstart settings:
clearpart --all --initlabel
part /boot --fstype=ext4 --size=500
part pv.9 --grow --size=1024
volgroup VolGroup00 --pesize=32768 pv.9
logvol / --fstype=ext4 --name=lv_root --vgname=VolGroup00 --grow --size=1024
logvol /snapshots --name=lv_snapshots --vgname=VolGroup00 --size=2048
logvol swap --name=lv_swap --vgname=VolGroup00 --grow --size=1000 --maxsize=2048
Version-Release number of selected component (if applicable):
lvm2.x86_64 2.02.83-3.el6 @rhel-x86_64-server-6
Steps to Reproduce:
lvm2-libs rpm installed?
recently upgraded device-mapper-event rpm before doing operation?
# yum list installed | grep device-mapper
device-mapper.x86_64 1.02.62-3.el6 @rhel-x86_64-server-6
device-mapper-devel.x86_64 1.02.62-3.el6 @rhel-x86_64-server-optional- 6
device-mapper-event.x86_64 1.02.62-3.el6 @rhel-x86_64-server-6
device-mapper-libs.x86_64 1.02.62-3.el6 @rhel-x86_64-server-6
device-mapper-multipath.x86_64 0.4.9-41.el6_1.1 @rhel-x86_64-server-6
# yum list installed | grep lvm2
lvm2.x86_64 2.02.83-3.el6 @rhel-x86_64-server-6
lvm2-devel.x86_64 2.02.83-3.el6 @rhel-x86_64-server-optional- 6
lvm2-libs.x86_64 2.02.83-3.el6 @rhel-x86_64-server-6
ok, that answers the first question. The rpm containing the snapshot event library is installed (lvm2-libs). Now we need to know if the version just installed can speak properly with the running daemon. Note that the running daemon may be from an older rpm. If the daemon wasn't restarted after an upgrade, I could see something like this potentially happening. I don't know how to have you validate this hypothesis outside of having you reboot the machine. This will shutdown all the devices and the daemon and restart everything on boot-up - using the newly installed rpms. Once rebooted, you can test and see if you get the same response from the command.
If, on the other hand, you haven't installed newer rpms since rebooting, then we'll have to ask more questions to figure out what is going on.
Seems we need clone of bug #454618 (dmevent needs to be restarted during update) for RHEL 6.3.
(Infrastructure is in place, dmevent should support restart, it need just some spec hacking.)
(In reply to comment #4)
> ok, that answers the first question. The rpm containing the snapshot event
> library is installed (lvm2-libs). Now we need to know if the version just
> installed can speak properly with the running daemon. Note that the running
> daemon may be from an older rpm. If the daemon wasn't restarted after an
> upgrade, I could see something like this potentially happening. I don't know
> how to have you validate this hypothesis outside of having you reboot the
> machine. This will shutdown all the devices and the daemon and restart
> everything on boot-up - using the newly installed rpms. Once rebooted, you can
> test and see if you get the same response from the command.
> If, on the other hand, you haven't installed newer rpms since rebooting, then
> we'll have to ask more questions to figure out what is going on.
As expected, the server has not been rebooted since the RPM updates were made. Rebooting the server fixed the issue and I no longer receive the error message when using lvcreate.
Since RHEL 6.2 External Beta has begun, and this bug remains
unresolved, it has been rejected as it is not proposed as
exception or blocker.
Red Hat invites you to ask your support representative to
propose this request, if appropriate and relevant, in the
next release of Red Hat Enterprise Linux.
The fix is scheduled for 6.3 (calling dmeventd -R on package update) - an rpm spec file change only, moving to POST (see also bug #644905 comment #1).
Adding QA ack for 6.3.
Technical note added. If any revisions are required, please edit the "Technical Notes" field
accordingly. All revisions will be proofread by the Engineering Content Services team.
The dmeventd, device-mapper daemon, used e.g. for monitoring LVM based mirrors and snapshots, is now properly restarted during package update to fetch new versions of installed libraries to avoid any code divergencies that could end up with a symbol lookup failure.
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.