<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Sat, Jan 23, 2016 at 8:05 PM, Nir Soffer <span dir="ltr">&lt;<a href="mailto:nsoffer@redhat.com" target="_blank">nsoffer@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span class="">On Sat, Jan 23, 2016 at 7:11 PM, Yaniv Bronheim &lt;<a href="mailto:ybronhei@redhat.com">ybronhei@redhat.com</a>&gt; wrote:<br>
&gt; any updates about that?<br>
&gt;<br>
&gt; <a href="https://gerrit.ovirt.org/#/c/52357/" rel="noreferrer" target="_blank">https://gerrit.ovirt.org/#/c/52357/</a> - this can be verified and get it<br>
<br>
</span>Should wait for execCmd (it should use the new terminating() context manager<br>
to ensure process is killed on errors). <br></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span class="">
&gt; <a href="https://gerrit.ovirt.org/#/c/52349/" rel="noreferrer" target="_blank">https://gerrit.ovirt.org/#/c/52349/</a> - got tiny comment about unneeded kill<br>
&gt; call<br>
<br>
</span>Not ready yet<br>
<span class=""><br>
&gt; <a href="https://gerrit.ovirt.org/51407" rel="noreferrer" target="_blank">https://gerrit.ovirt.org/51407</a> - Nir can merge<br>
<br>
</span>Waiting for Piotr to ack the tests (<a href="https://gerrit.ovirt.org/52362" rel="noreferrer" target="_blank">https://gerrit.ovirt.org/52362</a>)<br>
<span class=""><br>
&gt;<br>
&gt; Nir - please review <a href="https://gerrit.ovirt.org/52646" rel="noreferrer" target="_blank">https://gerrit.ovirt.org/52646</a> or take over<br>
<br>
</span>Should wait for execCmd<br>
<span class=""><br>
&gt;<br>
&gt; and update soon what the plans regarding the async usages in<br>
&gt; vdsm/storage/mount.py<br>
&gt; vdsm/storage/iscsiadm.py<br>
&gt; vdsm/storage/imageSharing.py<br>
&gt; vdsm/storage/hba.py<br>
&gt; vdsm/storage/blockSD.py<br>
<br>
</span>I will not have time for this at least after devconf, and even after<br>
devconf we are<br>
busy with spm removal (probably not for 4.0) and ovirt-image (for 4.0).<br>
<br>
I will add this to the storage todo list for now.<br>
<br>
&gt; and v2v.py<br>
<br>
v2v need to read only from stdout. If v2v is not expected to write<br>
more then 64k<br>
errors to stderr (highly unlikely), we don&#39;t need to use AsyncProc.<br>
Can create the<br>
process like we do in qemuimg.py, and read from the process stdout.<br>
<br>
If we want to handle the unlikely case of huge error output, we can<br>
use CommandStream<br>
to collect the output from both streams, but we will have to the<br>
change the output<br>
parser to be driven by output callback, instead of reading lines from stdout.<br>
<span class=""><br>
&gt; I prefer not to wait for that too long - we can remove the deathSignal<br>
&gt; usages there, and continue with <a href="https://gerrit.ovirt.org/#/c/48384" rel="noreferrer" target="_blank">https://gerrit.ovirt.org/#/c/48384</a><br>
<br>
</span>I think we should continue with other Python 3 porting efforts until<br>
we can eliminate<br>
cpopen non-standard apis.<br>
<span class=""><br>
&gt; Please also check if you can take over the re-implementation of async proc<br>
&gt; (<a href="https://gerrit.ovirt.org/49441" rel="noreferrer" target="_blank">https://gerrit.ovirt.org/49441</a>) as you (storage operations) are the main<br>
&gt; and only user of it, and it should fit Popen proc.<br>
<br>
</span>I think the current patch does not need too much work - only implement wait<br>
with a timeout.<br>
<br>
What about the subproces32 project you found? it looks like the right<br>
direction:<br>
<a href="https://pypi.python.org/pypi/subprocess32/" rel="noreferrer" target="_blank">https://pypi.python.org/pypi/subprocess32/</a> </blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
The author is Python core developer:<br>
<a href="https://github.com/python/cpython/commits?author=gpshead" rel="noreferrer" target="_blank">https://github.com/python/cpython/commits?author=gpshead</a><br>
<br>
We can drop cpopen, AsyncProc, AsyncProcOperation (used only in iscsi), and<br>
use this module to get Python 3 features and reliability, and be compatible with<br>
both Python 3 (fedora 24?) and 2 (el 7.x).<br></blockquote><div><br></div><div>Maybe, we first need to remove our non standard usages, then we might be able to change implementation easily and see the results.. first thing first. Try to estimate when your team will be able to proceed with storage parts, I already started with <a href="https://gerrit.ovirt.org/#/c/52646/">https://gerrit.ovirt.org/#/c/52646/</a> , if I&#39;ll get to more parts it will be great.. but we need to have more force here</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div class=""><div class="h5"><br>
&gt; On Mon, Jan 18, 2016 at 3:12 PM, Francesco Romani &lt;<a href="mailto:fromani@redhat.com">fromani@redhat.com</a>&gt;<br>
&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; ----- Original Message -----<br>
&gt;&gt; &gt; From: &quot;Yaniv Bronheim&quot; &lt;<a href="mailto:ybronhei@redhat.com">ybronhei@redhat.com</a>&gt;<br>
&gt;&gt; &gt; To: &quot;devel&quot; &lt;<a href="mailto:devel@ovirt.org">devel@ovirt.org</a>&gt;, &quot;Shahar Havivi&quot; &lt;<a href="mailto:shavivi@redhat.com">shavivi@redhat.com</a>&gt;,<br>
&gt;&gt; &gt; &quot;Francesco Romani&quot; &lt;<a href="mailto:fromani@redhat.com">fromani@redhat.com</a>&gt;, &quot;Nir<br>
&gt;&gt; &gt; Soffer&quot; &lt;<a href="mailto:nsoffer@redhat.com">nsoffer@redhat.com</a>&gt;<br>
&gt;&gt; &gt; Sent: Monday, January 18, 2016 11:01:10 AM<br>
&gt;&gt; &gt; Subject: Ensure processes death by terminating decorator -<br>
&gt;&gt; &gt; <a href="https://gerrit.ovirt.org/51407" rel="noreferrer" target="_blank">https://gerrit.ovirt.org/51407</a><br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Hi guys,<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Following the work to omit deathSignal attribute from our cpopen<br>
&gt;&gt; &gt; implementation we posted <a href="https://gerrit.ovirt.org/51407" rel="noreferrer" target="_blank">https://gerrit.ovirt.org/51407</a> which is ready<br>
&gt;&gt; &gt; for<br>
&gt;&gt; &gt; use.<br>
&gt;&gt; &gt; Currently locations that should use it are:<br>
&gt;&gt; &gt; (I wrote above who I expect to check the area and post a patch for that<br>
&gt;&gt; &gt; -<br>
&gt;&gt; &gt; we&#39;ll discuss it during next vdsm-sync to follow the work)<br>
&gt;&gt;<br>
&gt;&gt; &gt; fromani:<br>
&gt;&gt; &gt; vdsm_hooks/checkimages/before_vm_start.py - in checkImage - the code<br>
&gt;&gt; &gt; looks<br>
&gt;&gt; &gt; ok, but check if not better to use the terminating decorator.. I think<br>
&gt;&gt; &gt; it<br>
&gt;&gt; &gt; will be nicer<br>
&gt;&gt;<br>
&gt;&gt; Fair enough, posted <a href="https://gerrit.ovirt.org/52349" rel="noreferrer" target="_blank">https://gerrit.ovirt.org/52349</a><br>
&gt;&gt;<br>
&gt;&gt; &gt; some places define deathSignal for no reason, the call is sync - please<br>
&gt;&gt; &gt; remove those places:<br>
&gt;&gt; [...]<br>
&gt;&gt; &gt; fromani:<br>
&gt;&gt; &gt; lib/vdsm/virtsparsify.py<br>
&gt;&gt;<br>
&gt;&gt; Done in <a href="https://gerrit.ovirt.org/52357" rel="noreferrer" target="_blank">https://gerrit.ovirt.org/52357</a><br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; --<br>
&gt;&gt; Francesco Romani<br>
&gt;&gt; RedHat Engineering Virtualization R &amp; D<br>
&gt;&gt; Phone: 8261328<br>
&gt;&gt; IRC: fromani<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; Yaniv Bronhaim.<br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><span style="font-size:12.8px"><b>Yaniv Bronhaim.</b></span><br></div></div></div></div></div>
</div></div>