<div dir="ltr">For 1. No, sounds good.<div>2. maybe both mean the same?</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Mar 9, 2017 at 5:14 PM, Raghavendra Talur <span dir="ltr">&lt;<a href="mailto:rtalur@redhat.com" target="_blank">rtalur@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On Fri, Mar 10, 2017 at 3:01 AM, Michael Adam &lt;<a href="mailto:obnox@samba.org">obnox@samba.org</a>&gt; wrote:<br>
&gt; On 2017-03-09 at 16:17 -0500, Luis Pabon wrote:<br>
&gt;&gt; This looks great.  Thanks for the state machine diagram.<br>
&gt;<br>
&gt; Indeed!<br>
&gt;<br>
&gt;&gt; On Thu, Mar 9, 2017 at 11:06 AM, Raghavendra Talur &lt;<a href="mailto:rtalur@redhat.com">rtalur@redhat.com</a>&gt;<br>
&gt;&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; &gt; The PR now has the API changes requested.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Before review, here is the current state diagram<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; +-----------------+     disable/offline  +------------------+<br>
&gt;&gt; &gt; |                 |---------------------&gt;|                  |<br>
&gt;&gt; &gt; |                 |                      | Offline/Disabled |<br>
&gt;&gt; &gt; | Online/Enabled  |&lt;---------------------|                  |<br>
&gt;&gt; &gt; |                 |      enable/online   |                  |<br>
&gt;&gt; &gt; +-----------------+                      +------------------+<br>
&gt;&gt; &gt;       ^                                          ^        |<br>
&gt;&gt; &gt;       |                                          |        |remove<br>
&gt;&gt; &gt;       |                                   offline|        |<br>
&gt;&gt; &gt;       |add                                       |        |<br>
&gt;&gt; &gt;       |                                          |        |<br>
&gt;&gt; &gt;       |                                          |        |<br>
&gt;&gt; &gt;       |                                          |        v<br>
&gt;&gt; &gt; +------------------+                     +-------------------+<br>
&gt;&gt; &gt; |                  |                     |                   |<br>
&gt;&gt; &gt; | Deleted          |                     |   Failed/Removed  |<br>
&gt;&gt; &gt; |                  |&lt;--------------------|                   |<br>
&gt;&gt; &gt; |                  |          delete     |                   |<br>
&gt;&gt; &gt; +------------------+                     +-------------------+<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; The current implementation *requires* the device to be in &quot;Offline&quot; state<br>
&gt;&gt; &gt; before it can be removed. Some of the operations shown above aren&#39;t<br>
&gt;&gt; &gt; implemented yet.<br>
&gt;<br>
&gt; I was wondering if some of those should or can<br>
&gt; be implemented at all:<br>
&gt;<br>
&gt; * deleted        ----[add]----&gt; online<br>
&gt; * failed/removed --[offline]--&gt; offline/disabled<br>
&gt;<br>
&gt; I assume that these are the ops not implemented (yet).<br>
</div></div>yes, that&#39;s right.<br>
<span class=""><br>
&gt;<br>
&gt; I think remove should be a one-way operation.<br>
&gt; And similar for deletion. Or is the &#39;deleted&#39; state<br>
&gt; something that is equivalent to a new disk not being<br>
&gt; used at all in any volume?<br>
</span>yes, I considered it as a new disk which can be added.<br>
But, on testing I learnt: as the device is not completely cleaned up<br>
on a delete, heketi does not consider it as *new* and add fails. Needs<br>
a little work here.<br>
<br>
regarding *failed*--&gt;*offline* state<br>
current status: not implemented<br>
I propose that we should implement it.<br>
<br>
I have more questions:<br>
1. Prasanth asked us to give cli aliases for enable/disable as<br>
online/offline. I would like to do it. Any objections?<br>
2. What should be the state name, *failed* or *removed*? In the code,<br>
it is failed everywhere. The operation is called *remove*, but the<br>
device info output has *failed*. We really need to choose one of them<br>
here and be consistent.<br>
<span class="HOEnZb"><font color="#888888"><br>
Raghavendra Talur<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
&gt;<br>
&gt; Apart from these questions -- great!<br>
&gt;<br>
&gt; Thanks - Michael<br>
</div></div></blockquote></div><br></div>