Xin He created CLOUDSTACK-8839:
----------------------------------

             Summary: concurrent ip disassociate commands for virtual router 
maybe out of order, and this cause some public ips remnant in VR
                 Key: CLOUDSTACK-8839
                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-8839
             Project: CloudStack
          Issue Type: Bug
      Security Level: Public (Anyone can view this level - this is the default.)
          Components: Management Server, Virtual Router
    Affects Versions: 4.5.2
         Environment: three management server and handreds of vmware compute 
nodes
            Reporter: Xin He
            Priority: Critical
             Fix For: 4.5.2


*[appearance]*
when many cocurrent disable static nat command happend in one network, some 
public ips may remnant in VR, and this will cause a big problem for the hole 
cloud netowrk
*[reason]*
when executing the disable static nat command, CS will execute disassociate ip 
command at the same time, and this command will put all the public ip, include 
the associate and disassociate ips, to VR, however, if cocurrent disable static 
nat commands is out of order, some ip which should be disassociated may be 
associated again by the command should be executed first (because this command 
reach VR last, maybe for reason of some network latency).
*[bug fix suggestion]*
use some kind of lock mechanism like "optimistic lock", this "optimistic lock" 
will give a version id for network and vpc, anytime the network or vpc is doing 
some about public ip or network rules (network rules also have this problem), 
the version id will have an increment, when the resouce part (like 
VmwareResource) find the command which it got is before the last version they 
got before, this command will be discarded. This method guarantee that every 
command sent by resource part and rechieved by VR will be the last version of 
network or vpc at that time. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to