cinder/releasenotes/notes/hitachi-prevent-data-loss-9ec3569d7d5b1e7d.yaml
Atsushi Kawai 83399aceb0 Hitachi: Prevent to delete a LDEV assigned to multi objects
This patch prevents to delete a LDEV that is unexpectedly assigned to
two or more objects(volumes or snapshots).

In the unexpected situation, if ``delete`` command for one of objects
is run again, the data which is used by other objects is lost.

In order to prevent the data-loss, when creating an object,
the driver creates a LDEV and stores a value obtained by omitting
the hyphen from the object ID(*1) to ``LDEV nickname``.
When deleting an object, the driver compares the own object ID and
the object ID in ``LDEV nickname``, then, the object and the LDEV is
deleted only if both object IDs are same.
On the other hand, if both object IDs are not same, only the object
is deleted and the LDEV is kept, to prevent data-loss.

If format of ``LDEV nickname`` is not object ID(*2), both the object
and the LDEV is deleted without comparison, because it avoids disk
full risk, due to not deleting any LDEVs.
This patch implements only the object ID storing while creating a
snapshot and comparing IDs while deleting, because the feature to
store the object ID while creating a volume has already been
implemented.
(*1) Max length of ``LDEV nickname`` is 32 digits characters on
Hitachi storage.
(*2) 32 digits hexadecimal

Closes-Bug: #2072317
Change-Id: I7c6bd9a75dd1d7165d4f8614abb3d59fa642212d
2024-08-19 14:35:26 -04:00

7 lines
183 B
YAML

---
fixes:
- |
Hitachi driver `bug #2072317
<https://bugs.launchpad.net/cinder/+bug/2072317>`_: Fix potential
data-loss due to a network issue during a volume deletion.