<div dir="ltr"><div style="font-size:12.8px">I've been taking a look at the implementation and thinking about which cases update should be allowed.</div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">At a first glance, I would say that we should allow updates:</div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px"><ul><li style="margin-left:15px">Add a new interface (neutron l2-gateway-update gw1 --device name=hwvtep,interface_names=et<wbr>h0,<b>eth1</b>) being eth1 the new interface.</li><li style="margin-left:15px">Delete interface (neutron l2-gateway-update gw1 --device name=hwvtep,interface_names=et<wbr>h0) removing eth1. In this case, we should check that the port has not any active connection.</li></ul><div>However, in both cases there is a big issue, which is the granularity of the segmentation-ids per port, right?? You cannot add or remove an l2gw connection per port, which bring us to a dead end.</div></div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">Let's say I add eth1 to an existing l2gw. How can I get a vlan tag to that interface?? There is not l2gw-connection-update command... and trying to create the same one will fail. Even if you try to update the l2gw instance specifying the seg-id per port, it won't be active until a new connection is created.</div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">Folks, based on your experience, what's your take on this??</div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">IMHO, there is no easy way of solving this but with a big re-architecture.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Sep 29, 2017 at 1:46 PM, Lajos Katona <span dir="ltr"><<a href="mailto:lajos.katona@ericsson.com" target="_blank">lajos.katona@ericsson.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div text="#000000" bgcolor="#FFFFFF">
    Hi Ricardo,<br>
    <br>
    That is the exception which gives us the trouble.<br>
    <br>
    If you have ideas as you mentioned in which case a gw should be
    updated, and in what not, that would be really nice.<br>
    Actually now we have a kind of development environment with devstack
    and vtep emulator
    (<a class="m_-8372035491687130758moz-txt-link-freetext" href="http://docs.openvswitch.org/en/latest/howto/vtep/" target="_blank">http://docs.openvswitch.org/<wbr>en/latest/howto/vtep/</a>) on the same
    host, what do you think is that enough to go on with this problem?<br>
    I am not so sure if with vtep emulator we can cover all the good and
    bad (I mean when we mustn't do the update for example) scenarios.<br>
    <br>
    Regards<span class="HOEnZb"><font color="#888888"><br>
    Lajos</font></span><div><div class="h5"><br>
    <br>
    <div class="m_-8372035491687130758moz-cite-prefix">On 2017-09-28 14:12, Ricardo Noriega De
      Soto wrote:<br>
    </div>
    <blockquote type="cite">
      
      <div dir="ltr">I see the exception now Lajos:
        <div><br>
        </div>
        <div>
          <div>class L2GatewayInUse(exceptions.<wbr>InUse):</div>
          <div>    message = _("L2 Gateway '%(gateway_id)s' still has
            active mappings "</div>
          <div>                "with one or more neutron networks.")</div>
        </div>
        <div><br>
        </div>
        <div>:-)</div>
      </div>
      <div class="gmail_extra"><br>
        <div class="gmail_quote">On Wed, Sep 27, 2017 at 6:40 PM,
          Ricardo Noriega De Soto <span dir="ltr"><<a href="mailto:rnoriega@redhat.com" target="_blank">rnoriega@redhat.com</a>></span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div dir="ltr">Hey Lajos,
              <div><br>
              </div>
              <div>Is this the exception you are encountering?</div>
              <div><br>
              </div>
              <div>
                <div>(neutron) l2-gateway-update --device
                  name=hwvtep,interface_names=et<wbr>h0,eth1 gw1</div>
                <div>L2 Gateway 'b8ef7f98-e901-4ef5-b159-df533<wbr>64ca996'
                  still has active mappings with one or more neutron
                  networks.</div>
                <div>Neutron server returns request_ids:
                  ['req-f231dc53-cb7d-4221-ab74-<wbr>fa8715f85869']</div>
              </div>
              <div><br>
              </div>
              <div>I don't see the L2GatewayInUse exception you're
                talking about, but I guess it's the same situation.</div>
              <div><br>
              </div>
              <div>We should discuss in which case the l2gw instance
                could be updated, and in which cases it shouldn't.</div>
              <div><br>
              </div>
              <div>Please, let me know!</div>
              <div><br>
              </div>
              <div><br>
              </div>
            </div>
            <div class="gmail_extra">
              <div>
                <div class="m_-8372035491687130758h5"><br>
                  <div class="gmail_quote">On Wed, Aug 16, 2017 at 11:14
                    AM, Lajos Katona <span dir="ltr"><<a href="mailto:lajos.katona@ericsson.com" target="_blank">lajos.katona@ericsson.com</a>></span>
                    wrote:<br>
                    <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
                      <br>
                      We faced an issue with l2-gw-update, which means
                      that actually if there are connections for a gw
                      the update will throw an exception
                      (L2GatewayInUse), and the update is only possible
                      after deleting first the connections, do the
                      update and add the connections back.<br>
                      <br>
                      It is not exactly clear why this restriction is
                      there in the code (at least I can't find it in
                      docs or comments in the code, or review).<br>
                      As I see the check for network connections was
                      introduced in this patch:<br>
                      <a href="https://review.openstack.org/#/c/144097" rel="noreferrer" target="_blank">https://review.openstack.org/#<wbr>/c/144097</a>
                      (<a href="https://review.openstack.org/#/c/144097/21..22/networking_l2gw/db/l2gateway/l2gateway_db.py" rel="noreferrer" target="_blank">https://review.openstack.org/<wbr>#/c/144097/21..22/networking_l<wbr>2gw/db/l2gateway/l2gateway_db.<wbr>py</a>)<br>
                      <br>
                      Could you please give me a little background why
                      the update operation is not allowed on an l2gw
                      with network connections?<br>
                      <br>
                      Thanks in advance for the help.<br>
                      <br>
                      Regards<br>
                      Lajos<br>
                      <br>
                      ______________________________<wbr>______________________________<wbr>______________<br>
                      OpenStack Development Mailing List (not for usage
                      questions)<br>
                      Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.op<wbr>enstack.org?subject:unsubscrib<wbr>e</a><br>
                      <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi<wbr>-bin/mailman/listinfo/openstac<wbr>k-dev</a><br>
                    </blockquote>
                  </div>
                  <br>
                  <br clear="all">
                  <div><br>
                  </div>
                </div>
              </div>
              <span>-- <br>
                <div class="m_-8372035491687130758m_-1018337626122417223gmail_signature" data-smartmail="gmail_signature">
                  <div dir="ltr">
                    <div>
                      <div dir="ltr">Ricardo Noriega<br>
                        <div><br>
                        </div>
                        <div>Senior <span style="font-size:12.8px">Software
                            Engineer - NFV Partner Engineer | Office of
                            Technology  | Red Hat</span><br>
                        </div>
                        <div><span style="font-size:12.8px">irc:
                            rnoriega @freenode</span></div>
                        <div><br>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </span></div>
          </blockquote>
        </div>
        <br>
        <br clear="all">
        <div><br>
        </div>
        -- <br>
        <div class="m_-8372035491687130758gmail_signature" data-smartmail="gmail_signature">
          <div dir="ltr">
            <div>
              <div dir="ltr">Ricardo Noriega<br>
                <div><br>
                </div>
                <div>Senior <span style="font-size:12.8px">Software
                    Engineer - NFV Partner Engineer | Office of
                    Technology  | Red Hat</span><br>
                </div>
                <div><span style="font-size:12.8px">irc: rnoriega
                    @freenode</span></div>
                <div><br>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
      <br>
      <fieldset class="m_-8372035491687130758mimeAttachmentHeader"></fieldset>
      <br>
      <pre>______________________________<wbr>______________________________<wbr>______________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: <a class="m_-8372035491687130758moz-txt-link-abbreviated" href="mailto:OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" target="_blank">OpenStack-dev-request@lists.<wbr>openstack.org?subject:<wbr>unsubscribe</a>
<a class="m_-8372035491687130758moz-txt-link-freetext" href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/<wbr>cgi-bin/mailman/listinfo/<wbr>openstack-dev</a>
</pre>
    </blockquote>
    <br>
  </div></div></div>

<br>______________________________<wbr>______________________________<wbr>______________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.<wbr>openstack.org?subject:<wbr>unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/<wbr>cgi-bin/mailman/listinfo/<wbr>openstack-dev</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr">Ricardo Noriega<br><div><br></div><div>Senior <span style="font-size:12.8px">Software Engineer - NFV Partner Engineer | Office of Technology  | Red Hat</span><br></div><div><span style="font-size:12.8px">irc: rnoriega @freenode</span></div><div><br></div></div></div></div></div>
</div>