<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">read on:<br>
      we will send the host to compute manager:<br>
      <br>
          def _provision_resource(self, context, weighted_host,
      request_spec,<br>
                  filter_properties, requested_networks, injected_files,<br>
                  admin_password, is_first_time, instance_uuid=None):<br>
              """Create the requested resource in this Zone."""<br>
              # Add a retry entry for the selected compute host:<br>
              self._add_retry_host(filter_properties,
      weighted_host.host_state.host)<br>
      <br>
              self._add_oversubscription_policy(filter_properties,<br>
                      weighted_host.host_state)<br>
      <br>
              payload = dict(request_spec=request_spec,<br>
                             weighted_host=weighted_host.to_dict(),<br>
                             instance_id=instance_uuid)<br>
              notifier.notify(context,
      notifier.publisher_id("scheduler"),<br>
                              'scheduler.run_instance.scheduled',
      notifier.INFO,<br>
                              payload)<br>
      <br>
              updated_instance = driver.instance_update_db(context,
      instance_uuid)<br>
      <br>
              self.compute_rpcapi.run_instance(context,
      instance=updated_instance,<br>
                      host=weighted_host.host_state.host,<br>
                      request_spec=request_spec,
      filter_properties=filter_properties,<br>
                      requested_networks=requested_networks,<br>
                      injected_files=injected_files,<br>
                      admin_password=admin_password,
      is_first_time=is_first_time)<br>
      On 10/12/2012 09:54 AM, 韦远科 wrote:<br>
    </div>
    <blockquote
cite="mid:CAGCAvmeUf282_XdgRZKw0r71qQay+BF3y3BwLpoMnej4tWiL2Q@mail.gmail.com"
      type="cite">
      <div>hi,</div>
      <div><br>
      </div>
      <div>I read the following code in nova scheduler and have some
        questions with the code marked in yellow.</div>
      <div>the following code can be found at "<a moz-do-not-send="true"
href="https://github.com/openstack/nova/blob/master/nova/scheduler/filter_scheduler.py">https://github.com/openstack/nova/blob/master/nova/scheduler/filter_scheduler.py</a>"</div>
      <div><br>
      </div>
      <div>
        <pre style="margin-top:0px;margin-bottom:0px;padding:0px;border:0px"><div class="line" id="LC128" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">

<span class="k" style="margin:0px;padding:0px;border:0px;font-weight:bold">def</span> <span class="nf" style="margin:0px;padding:0px;border:0px;color:rgb(153,0,0);font-weight:bold">_provision_resource</span><span class="p" style="margin:0px;padding:0px;border:0px">(</span><span class="bp" style="margin:0px;padding:0px;border:0px;color:rgb(153,153,153)">self</span><span class="p" style="margin:0px;padding:0px;border:0px">,</span> <span class="n" style="margin:0px;padding:0px;border:0px">context</span><span class="p" style="margin:0px;padding:0px;border:0px">,</span> <span class="n" style="margin:0px;padding:0px;border:0px">weighted_host</span><span class="p" style="margin:0px;padding:0px;border:0px">,</span> <span class="n" style="margin:0px;padding:0px;border:0px">request_spec</span><span class="p" style="margin:0px;padding:0px;border:0px">,</span></div>

<div class="line" id="LC129" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">            <span class="n" style="margin:0px;padding:0px;border:0px">filter_properties</span><span class="p" style="margin:0px;padding:0px;border:0px">,</span> <span class="n" style="margin:0px;padding:0px;border:0px">requested_networks</span><span class="p" style="margin:0px;padding:0px;border:0px">,</span> <span class="n" style="margin:0px;padding:0px;border:0px">injected_files</span><span class="p" style="margin:0px;padding:0px;border:0px">,</span></div>

<div class="line" id="LC130" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">            <span class="n" style="margin:0px;padding:0px;border:0px">admin_password</span><span class="p" style="margin:0px;padding:0px;border:0px">,</span> <span class="n" style="margin:0px;padding:0px;border:0px">is_first_time</span><span class="p" style="margin:0px;padding:0px;border:0px">,</span> <span class="n" style="margin:0px;padding:0px;border:0px">instance_uuid</span><span class="o" style="margin:0px;padding:0px;border:0px;font-weight:bold">=</span><span class="bp" style="margin:0px;padding:0px;border:0px;color:rgb(153,153,153)">None</span><span class="p" style="margin:0px;padding:0px;border:0px">):</span></div>

<div class="line" id="LC131" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">        <span class="sd" style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">"""Create the requested resource in this Zone."""</span></div>

<div class="line" id="LC132" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">        <span class="c" style="margin:0px;padding:0px;border:0px;color:rgb(153,153,136);font-style:italic"># Add a retry entry for the selected compute host:</span></div>

<div class="line" id="LC133" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">        <span class="bp" style="margin:0px;padding:0px;border:0px;color:rgb(153,153,153)">self</span><span class="o" style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span class="n" style="margin:0px;padding:0px;border:0px">_add_retry_host</span><span class="p" style="margin:0px;padding:0px;border:0px">(</span><span class="n" style="margin:0px;padding:0px;border:0px">filter_properties</span><span class="p" style="margin:0px;padding:0px;border:0px">,</span> <span class="n" style="margin:0px;padding:0px;border:0px">weighted_host</span><span class="o" style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span class="n" style="margin:0px;padding:0px;border:0px">host_state</span><span class="o" style="margin:0px;padding:0px;border:0px;font-weight:bold!
 ">.</span>
<span class="n" style="margin:0px;padding:0px;border:0px">host</span><span class="p" style="margin:0px;padding:0px;border:0px">)</span></div>

<div class="line" id="LC134" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">
</div><div class="line" id="LC135" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">

        <span class="bp" style="margin:0px;padding:0px;border:0px;color:rgb(153,153,153)">self</span><span class="o" style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span class="n" style="margin:0px;padding:0px;border:0px">_add_oversubscription_policy</span><span class="p" style="margin:0px;padding:0px;border:0px">(</span><span class="n" style="margin:0px;padding:0px;border:0px">filter_properties</span><span class="p" style="margin:0px;padding:0px;border:0px">,</span></div>

<div class="line" id="LC136" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">                <span class="n" style="margin:0px;padding:0px;border:0px">weighted_host</span><span class="o" style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span class="n" style="margin:0px;padding:0px;border:0px">host_state</span><span class="p" style="margin:0px;padding:0px;border:0px">)</span></div>

<div class="line" id="LC137" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">
</div><div class="line" id="LC138" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">

        <span class="n" style="margin:0px;padding:0px;border:0px">payload</span> <span class="o" style="margin:0px;padding:0px;border:0px;font-weight:bold">=</span> <span class="nb" style="margin:0px;padding:0px;border:0px;color:rgb(0,134,179)">dict</span><span class="p" style="margin:0px;padding:0px;border:0px">(</span><span class="n" style="margin:0px;padding:0px;border:0px">request_spec</span><span class="o" style="margin:0px;padding:0px;border:0px;font-weight:bold">=</span><span class="n" style="margin:0px;padding:0px;border:0px">request_spec</span><span class="p" style="margin:0px;padding:0px;border:0px">,</span></div>

<div class="line" id="LC139" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">                       <span class="n" style="margin:0px;padding:0px;border:0px">weighted_host</span><span class="o" style="margin:0px;padding:0px;border:0px;font-weight:bold">=</span><span class="n" style="margin:0px;padding:0px;border:0px">weighted_host</span><span class="o" style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span class="n" style="margin:0px;padding:0px;border:0px">to_dict</span><span class="p" style="margin:0px;padding:0px;border:0px">(),</span></div>

<div class="line" id="LC140" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">                       <span class="n" style="margin:0px;padding:0px;border:0px">instance_id</span><span class="o" style="margin:0px;padding:0px;border:0px;font-weight:bold">=</span><span class="n" style="margin:0px;padding:0px;border:0px">instance_uuid</span><span class="p" style="margin:0px;padding:0px;border:0px">)</span></div>

<div class="line" id="LC141" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">        <span class="n" style="margin:0px;padding:0px;border:0px">notifier</span><span class="o" style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span class="n" style="margin:0px;padding:0px;border:0px">notify</span><span class="p" style="margin:0px;padding:0px;border:0px">(</span><span class="n" style="margin:0px;padding:0px;border:0px">context</span><span class="p" style="margin:0px;padding:0px;border:0px">,</span> <span class="n" style="margin:0px;padding:0px;border:0px">notifier</span><span class="o" style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span class="n" style="margin:0px;padding:0px;border:0px">publisher_id</span><span class="p" style="margin:0px;padding:0px;border:0px">(</span><span class="s" style="margin:0px;padding:0px;bor!
 der:0px;co
lor:rgb(221,17,68)">"scheduler"</span><span class="p" style="margin:0px;padding:0px;border:0px">),</span></div>

<div class="line" id="LC142" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">                        <span class="s" style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">'scheduler.run_instance.scheduled'</span><span class="p" style="margin:0px;padding:0px;border:0px">,</span> <span class="n" style="margin:0px;padding:0px;border:0px">notifier</span><span class="o" style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span class="n" style="margin:0px;padding:0px;border:0px">INFO</span><span class="p" style="margin:0px;padding:0px;border:0px">,</span></div>

<div class="line" id="LC143" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">                        <span class="n" style="margin:0px;padding:0px;border:0px">payload</span><span class="p" style="margin:0px;padding:0px;border:0px">)</span></div>

<div class="line" id="LC144" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">
</div><div class="line" id="LC145" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">

        <span style="background-color:rgb(255,255,0)"><span class="n" style="margin:0px;padding:0px;border:0px">updated_instance</span> <span class="o" style="margin:0px;padding:0px;border:0px;font-weight:bold">=</span> <span class="n" style="margin:0px;padding:0px;border:0px">driver</span><span class="o" style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span class="n" style="margin:0px;padding:0px;border:0px">instance_update_db</span><span class="p" style="margin:0px;padding:0px;border:0px">(</span><span class="n" style="margin:0px;padding:0px;border:0px">context</span><span class="p" style="margin:0px;padding:0px;border:0px">,</span> <span class="n" style="margin:0px;padding:0px;border:0px">instance_uuid</span><span class="p" style="margin:0px;padding:0px;border:0px">)</span></span></div>

<div class="line" id="LC145" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px"><span style="background-color:rgb(255,255,255)">        </span><span style="background-color:rgb(255,255,0)">#at this point, we already know the host which will provision the instance, that is recorded in variable <i>weighted_host.</i></span></div>

<div class="line" id="LC145" style="margin:0px;padding:0px 0px 0px 10px;border:0px"><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;background-color:rgb(255,255,0)"><i>        </i>But actually, the <i>instance_update_db</i> function only update "</span><font face="Consolas, Liberation Mono, Courier, monospace"><span style="font-size:12px;line-height:16px"><font color="#333333">values = {</font><font color="#ff0000">'host': None</font><font color="#333333">, 'scheduled_at': now}</font></span></font><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;background-color:rgb(255,255,0)">" in database,</span></div>

<div class="line" id="LC145" style="margin:0px;padding:0px 0px 0px 10px;border:0px"><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;background-color:rgb(255,255,0)">        So why????</span></div>

<div class="line" id="LC145" style="margin:0px;padding:0px 0px 0px 10px;border:0px"><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;background-color:rgb(255,255,0)">


</span></div><div class="line" id="LC145" style="margin:0px;padding:0px 0px 0px 10px;border:0px"><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;background-color:rgb(255,255,255)">        </span></div>

<div class="line" id="LC145" style="margin:0px;padding:0px 0px 0px 10px;border:0px"><span style="font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;background-color:rgb(255,255,255)"><font color="#ffffff">        </font>can someone give me some help? thanks very much!</span></div>

<div class="line" id="LC145" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">
</div><div class="line" id="LC146" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:16px;margin:0px;padding:0px 0px 0px 10px;border:0px">


</div></pre>
      </div>
      -----------------------------------------------------------------<br>
      韦远科 
      <div>中国科学院 计算机网络信息中心</div>
      <div>北京市海淀区中关村南四街四号 349信箱(100190)</div>
      <div style="text-align:-webkit-left"><font face="����"
          color="#4b4b4b"><span style="font-size:14px;line-height:24px"><br>
          </span></font></div>
      <div>Yuanke Wei (Wei)</div>
      <div>Computer Network Information Center,Chinese Academy of
        Sciences</div>
      <div>4 Zhongguancun Nansijie, Haidian District, Beijing 100190,
        China</div>
      <div>P.O. Box 349</div>
      <div>
        gtalk: <a moz-do-not-send="true"
          href="mailto:weiyuanke123@gmail.com" target="_blank">weiyuanke123@gmail.com</a></div>
      <div>
        <div>msn: <a moz-do-not-send="true"
            href="mailto:weiyuanke123@hotmail.com" target="_blank">weiyuanke123@hotmail.com</a></div>
      </div>
      <br>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Mailing list: <a class="moz-txt-link-freetext" href="https://launchpad.net/~openstack">https://launchpad.net/~openstack</a>
Post to     : <a class="moz-txt-link-abbreviated" href="mailto:openstack@lists.launchpad.net">openstack@lists.launchpad.net</a>
Unsubscribe : <a class="moz-txt-link-freetext" href="https://launchpad.net/~openstack">https://launchpad.net/~openstack</a>
More help   : <a class="moz-txt-link-freetext" href="https://help.launchpad.net/ListHelp">https://help.launchpad.net/ListHelp</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>