<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Nov 11, 2019 at 4:05 PM Dan Smith <<a href="mailto:dms@danplanet.com">dms@danplanet.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">> Sharding with and/or within cells will help to some degree (and we are<br>
> actively looking into this as you probably know), but I think that<br>
> should not stop us from checking if there are algorithmic improvements<br>
> (e.g. when collecting the data), or if moving to a different locking<br>
> granularity or even parallelising the update are feasible additional<br>
> improvements.<br>
<br>
All of that code was designed around one node per compute host. In the<br>
ironic case it was expanded (hacked) to support N where N is not<br>
huge. Giving it a huge number, and using a driver where nodes go into<br>
maintenance/cleaning for long periods of time is asking for trouble.<br>
<br>
Given there is only one case where N can legitimately be greater than<br>
one, I'm really hesitant to back a proposal to redesign it for large<br>
values of N.<br>
<br>
Perhaps we as a team just need to document what sane, tested, and<br>
expected-to-work values for N are?<br>
<br></blockquote><div><br></div><div>What we discussed at the PTG was the fact that we only have one global semaphore for this module but we have N ResourceTracker python objects (where N is the number of Ironic nodes per compute service).</div><div>As per CERN, it looks this semaphore blocks when updating periodically so we basically said it could only be a bugfix given we could create N semaphores instead.</div><div>That said, as it could have some problems, we want to make sure we can test the change not only by the gate but also directly by CERN.</div><div><br></div><div>Another discussion was about having more than one thread for the compute service (ie. N threads) but my opinion was that we should first look at the above before discussing about any other way.</div><div><br></div><div>-S</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
--Dan<br>
<br>
</blockquote></div></div>