From: Tony Asleson Date: Mon, 14 Oct 2019 19:33:16 +0000 (-0500) Subject: lvmdbustest.py: Use local data instead of fetching X-Git-Tag: v2_03_07~84 X-Git-Url: https://sourceware.org/git/?a=commitdiff_plain;h=508d1808b07f204ca0ce71d4d505ded82f30d0ce;p=lvm2.git lvmdbustest.py: Use local data instead of fetching Avoid making more dbus calls to get information we already have. This also avoids us getting an error where a dbus object representation is being deleted by another process while we are trying to gather information about it across the wire. --- diff --git a/test/dbus/lvmdbustest.py b/test/dbus/lvmdbustest.py index 711b2476b..522e3ca13 100755 --- a/test/dbus/lvmdbustest.py +++ b/test/dbus/lvmdbustest.py @@ -88,8 +88,12 @@ def _root_pv_name(res, pv_name): vg_name = pv_name.split('/')[2] for v in res[VG_INT]: if v.Vg.Name == vg_name: - pv = ClientProxy(bus, v.Vg.Pvs[0], interfaces=(PV_INT, )) - return _root_pv_name(res, pv.Pv.Name) + for pv in res[PV_INT]: + if pv.object_path in v.Vg.Pvs: + return _root_pv_name(res, pv.Pv.Name) + return None + + def _prune_lvs(res, interface, vg_object_path): lvs = [lv for lv in res[interface] if lv.LvCommon.Vg == vg_object_path] res[interface] = lvs