Bug 1301073

Summary: DM_MULTIPATH_TIMESTAMP among udev properties when device is no longer multipathed
Product: Red Hat Enterprise Linux 7 Reporter: mulhern <amulhern>
Component: device-mapper-multipathAssignee: LVM and device-mapper development team <lvm-team>
Status: CLOSED NOTABUG QA Contact: Lin Li <lilin>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.2CC: agk, bmarzins, heinzm, lilin, msnitzer, prajnoha
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-02-12 04:16:02 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 mulhern 2016-01-22 14:19:28 UTC
Description of problem:

This value hangs around in a device's udev properties even when device is no longer multipathed. Other DM_MULTIPATH_* values disappear.

Version-Release number of selected component (if applicable):

Name        : device-mapper-multipath
Arch        : x86_64
Version     : 0.4.9
Release     : 85.el7
Size        : 178 k
Repo        : installed
From repo   : RHEL-7

How reproducible:

Seems consistent.

Steps to Reproduce:
1. Remove some multipath devices from a group.
2. Use udevadm to list their udev properties.
3. Notice that DM_MULTIPATH_TIMESTAMP remains even while other DM_MULTIPATH_* properties are gone.

Actual results:

DM_MULTIPATH_TIMESTAMP remains, other DM_MULTIPATH_* properties gone.

Expected results:

I was a little surprised to see any DM_MULTIPATH_* properties remaining for the device.

Additional info:

This may be quite deliberate, but even a reboot doesn't seem to clear it.

Comment 2 Ben Marzinski 2016-02-12 04:16:02 UTC
DM_MULTIPATH_TIMESTAMP will always be there when multipathing is enabled and multipathd is running.  It's purpose it to cut down on how often multipath has to check if a device is a multipath path.  This can take a bit of time, so we don't want to check on every change event.  Instead, multipathd updates a timestamp whenever a new path device is discovered for the first time, or the configuration file is reloaded.  When a change event happens, the device checks its existing timestamp value against the current one, and if it has changed, multipath will recheck the path.