Skip to content

Commit 2018fe3

Browse files
committed
Fix sfam-2431 _3
1 parent 2eeabb7 commit 2018fe3

1 file changed

Lines changed: 9 additions & 6 deletions

File tree

‎simplyblock_core/services/lvol_monitor.py‎

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -115,17 +115,20 @@ def process_lvol_delete_finish(lvol):
115115

116116
# 3-1 async delete lvol bdev from primary
117117
primary_node = db.get_storage_node_by_id(leader_node.get_id())
118-
if primary_node.status == StorageNode.STATUS_ONLINE:
118+
if primary_node.status in [StorageNode.STATUS_ONLINE, StorageNode.STATUS_SUSPENDED, StorageNode.STATUS_DOWN]:
119119
ret = lvol_controller.delete_lvol_from_node(lvol.get_id(), primary_node.get_id(), del_async=True)
120120
if not ret:
121121
logger.error(f"Failed to delete lvol from primary_node node: {primary_node.get_id()}")
122122

123123
# 3-2 async delete lvol bdev from secondary
124-
if leader_node.secondary_node_id:
125-
sec_node = db.get_storage_node_by_id(leader_node.secondary_node_id)
126-
if sec_node:
127-
sec_node.lvol_sync_del_queue.append(f"{lvol.lvs_name}/{lvol.lvol_bdev}")
128-
sec_node.write_to_db()
124+
if snode.get_id() == leader_node.get_id():
125+
sec_node = db.get_storage_node_by_id(snode.secondary_node_id)
126+
else:
127+
sec_node = db.get_storage_node_by_id(snode.get_id())
128+
129+
if sec_node:
130+
sec_node.lvol_sync_del_queue.append(f"{lvol.lvs_name}/{lvol.lvol_bdev}")
131+
sec_node.write_to_db()
129132

130133
lvol_events.lvol_delete(lvol)
131134
lvol.remove(db.kv_store)

0 commit comments

Comments
 (0)