<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:SimSun;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"\@SimSun";
        panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal">You can do lazy copy that happens only when volume or snapshot is deleted.<o:p></o:p></p>
<p class="MsoNormal">You will need to have refcount on metadata.<o:p></o:p></p>
<p>-----Original Message-----<br>
From: Li, Xiaoyan [mailto:xiaoyan.li@intel.com] <br>
Sent: Tuesday, December 08, 2015 10:11 PM<br>
To: OpenStack Development Mailing List (not for usage questions) <br>
Subject: [openstack-dev] [cinder] Dependencies of snapshots on volumes<br>
<br>
Hi all, <br>
<br>
Currently when deleting a volume, it checks whether there are snapshots created from it. If yes deletion is prohibited. But it allows to extend the volume, no check whether there are snapshots from it.<br>
<br>
The two behaviors in Cinder are not consistent from my viewpoint. <br>
<br>
In backend storage, their behaviors are same.<br>
For full snapshot, if still in copying progress, both extend and deletion are not allowed. If snapshot copying finishes, both extend and deletion are allowed.<br>
For incremental snapshot, both extend and deletion are not allowed. <br>
<br>
As a result, this raises two concerns here: <br>
1. Let such operations behavior same in Cinder.<br>
2. I prefer to let storage driver decide the dependencies, not in the general core codes.
<br>
<br>
Meanwhile, if we let driver to decide the dependencies, the following changes need to do in Cinder:
<br>
1. When creating a snapshot from volume, it needs copy all metadata of volume to snapshot. Currently it doesn't.
<br>
Any other potential issues please let me know.<br>
<br>
Any input will be appreciated. <br>
<br>
Best wishes<br>
Lisa<br>
<br>
<br>
__________________________________________________________________________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: OpenStack-dev-request@lists.openstack.org?subject:unsubscribe<br>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev<o:p></o:p></p>
</div>
</body>
</html>