[OVSDB-252] In OVSDB Single node clustering 2 switches registered with same manager there are two "OWNER" found in southbound, and with this two "OWNER" replication also happens Created: 09/Jan/16  Updated: 03/Feb/16  Resolved: 03/Feb/16

Status: Resolved
Project: ovsdb
Component/s: Southbound.Open_vSwitch
Affects Version/s: unspecified
Fix Version/s: None

Type: Bug
Reporter: ranjithkumar_t Assignee: Anil Vishnoi
Resolution: Cannot Reproduce Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Linux
Platform: All


Attachments: Text File karaf.log    
External issue ID: 4916
Priority: High

 Description   

In OVSDB Single node clustering 2 switches registered with same manager there are two "OWNER" founds in southbound, and with this two "OWNER" replication happens

Observation : 1 (A Switch registered with manager) - one "OWNER" found

Here switch ip is : 10.106.138.114

2016-01-08 15:14:21,981 | INFO | lt-dispatcher-25 | OvsdbConnectionManager | 265 - org.opendaylight.ovsdb.southbound-impl - 1.2.1.SNAPSHOT | handleOwnershipChanged: this southbound plugin instance is an OWNER of the device ConnectionInfo [Remote-address=10.106.138.114, Remote-port=42943, Local-address10.106.138.115, Local-port=6640, type=PASSIVE]

Observation : 2 (Two Switches registered with same manager) - two "OWNER" found

Here switch ips are : 10.106.138.114, 10.106.138.111

2016-01-08 21:42:02,631 | INFO | ult-dispatcher-3 | OvsdbConnectionManager | 265 - org.opendaylight.ovsdb.southbound-impl - 1.2.1.SNAPSHOT | handleOwnershipChanged: this southbound plugin instance is an OWNER of the device ConnectionInfo [Remote-address=10.106.138.114, Remote-port=43102, Local-address10.106.138.115, Local-port=6640, type=PASSIVE]

2016-01-08 21:42:21,608 | INFO | lt-dispatcher-21 | OvsdbConnectionManager | 265 - org.opendaylight.ovsdb.southbound-impl - 1.2.1.SNAPSHOT | handleOwnershipChanged: this southbound plugin instance is an OWNER of the device ConnectionInfo [Remote-address=10.106.138.111, Remote-port=42252, Local-address10.106.138.115, Local-port=6640, type=PASSIVE]

Observation : 3 (Three Switches registered with same manager)

Here switch ips are : 10.106.138.114, 10.106.138.111, 10.106.138.128

2016-01-08 21:42:02,397 | WARN | ssionScavenger-4 | teInvalidatingHashSessionManager | 183 - org.ops4j.pax.web.pax-web-jetty - 3.1.4 | Timing out for 1 session(s) with id 1qhndkc62w2q3ko7qhsd9z1l1
2016-01-08 21:42:02,533 | INFO | entLoopGroup-6-1 | LoggingHandler | 123 - io.netty.common - 4.0.33.Final | [id: 0x6fbf9ca8, /0:0:0:0:0:0:0:0:6640] RECEIVED: [id: 0xeac61926, /10.106.138.114:43102 => /10.106.138.115:6640]
2016-01-08 21:42:02,545 | INFO | pool-28-thread-2 | OvsdbConnectionManager | 265 - org.opendaylight.ovsdb.southbound-impl - 1.2.1.SNAPSHOT | Library connected PASSIVE from /10.106.138.114:43102 to /10.106.138.115:6640
2016-01-08 21:42:02,547 | INFO | pool-28-thread-2 | OvsdbConnectionManager | 265 - org.opendaylight.ovsdb.southbound-impl - 1.2.1.SNAPSHOT | OVSDB Connection from /10.106.138.114:43102
2016-01-08 21:42:02,622 | INFO | pool-28-thread-2 | OvsdbConnectionManager | 265 - org.opendaylight.ovsdb.southbound-impl - 1.2.1.SNAPSHOT | InstanceIdentifier KeyedInstanceIdentifier

{targetType=interface org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node, path=[org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NetworkTopology, org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.Topology[key=TopologyKey [_topologyId=Uri [_value=ovsdb:1]]], org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node[key=NodeKey [_nodeId=Uri [_value=ovsdb://uuid/280dfb6f-72c4-41ea-a3d7-7002f169442f]]]]}

generated for device connection ConnectionInfo [Remote-address=10.106.138.114, Remote-port=43102, Local-address10.106.138.115, Local-port=6640, type=PASSIVE]
2016-01-08 21:42:02,624 | INFO | pool-28-thread-2 | OvsdbConnectionManager | 265 - org.opendaylight.ovsdb.southbound-impl - 1.2.1.SNAPSHOT | OVSDB entity Entity{type='ovsdb', id=/(urn:TBD:params:xml:ns:yang:network-topology?revision=2013-10-21)network-topology/topology/topology[

{(urn:TBD:params:xml:ns:yang:network-topology?revision=2013-10-21)topology-id=ovsdb:1}

]/node/node[

{(urn:TBD:params:xml:ns:yang:network-topology?revision=2013-10-21)node-id=ovsdb://uuid/280dfb6f-72c4-41ea-a3d7-7002f169442f}

]} is registered for ownership.
2016-01-08 21:42:02,631 | INFO | ult-dispatcher-3 | OvsdbConnectionManager | 265 - org.opendaylight.ovsdb.southbound-impl - 1.2.1.SNAPSHOT | handleOwnershipChanged: this southbound plugin instance is an OWNER of the device ConnectionInfo [Remote-address=10.106.138.114, Remote-port=43102, Local-address10.106.138.115, Local-port=6640, type=PASSIVE]

2016-01-08 21:42:21,540 | INFO | entLoopGroup-6-1 | LoggingHandler | 123 - io.netty.common - 4.0.33.Final | [id: 0x6fbf9ca8, /0:0:0:0:0:0:0:0:6640] RECEIVED: [id: 0x93288895, /10.106.138.111:42252 => /10.106.138.115:6640]
2016-01-08 21:42:21,543 | INFO | pool-28-thread-1 | OvsdbConnectionManager | 265 - org.opendaylight.ovsdb.southbound-impl - 1.2.1.SNAPSHOT | Library connected PASSIVE from /10.106.138.111:42252 to /10.106.138.115:6640
2016-01-08 21:42:21,543 | INFO | pool-28-thread-1 | OvsdbConnectionManager | 265 - org.opendaylight.ovsdb.southbound-impl - 1.2.1.SNAPSHOT | OVSDB Connection from /10.106.138.111:42252
2016-01-08 21:42:21,602 | INFO | pool-28-thread-1 | OvsdbConnectionManager | 265 - org.opendaylight.ovsdb.southbound-impl - 1.2.1.SNAPSHOT | InstanceIdentifier KeyedInstanceIdentifier

{targetType=interface org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node, path=[org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NetworkTopology, org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.Topology[key=TopologyKey [_topologyId=Uri [_value=ovsdb:1]]], org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node[key=NodeKey [_nodeId=Uri [_value=ovsdb:/127.0.0.1:6640]]]]}

generated for device connection ConnectionInfo [Remote-address=10.106.138.111, Remote-port=42252, Local-address10.106.138.115, Local-port=6640, type=PASSIVE]
2016-01-08 21:42:21,603 | INFO | pool-28-thread-1 | OvsdbConnectionManager | 265 - org.opendaylight.ovsdb.southbound-impl - 1.2.1.SNAPSHOT | OVSDB entity Entity{type='ovsdb', id=/(urn:TBD:params:xml:ns:yang:network-topology?revision=2013-10-21)network-topology/topology/topology[

{(urn:TBD:params:xml:ns:yang:network-topology?revision=2013-10-21)topology-id=ovsdb:1}

]/node/node[

{(urn:TBD:params:xml:ns:yang:network-topology?revision=2013-10-21)node-id=ovsdb:/127.0.0.1:6640}

]} is registered for ownership.
2016-01-08 21:42:21,608 | INFO | lt-dispatcher-21 | OvsdbConnectionManager | 265 - org.opendaylight.ovsdb.southbound-impl - 1.2.1.SNAPSHOT | handleOwnershipChanged: this southbound plugin instance is an OWNER of the device ConnectionInfo [Remote-address=10.106.138.111, Remote-port=42252, Local-address10.106.138.115, Local-port=6640, type=PASSIVE]

2016-01-08 21:42:34,261 | INFO | entLoopGroup-6-1 | LoggingHandler | 123 - io.netty.common - 4.0.33.Final | [id: 0x6fbf9ca8, /0:0:0:0:0:0:0:0:6640] RECEIVED: [id: 0x00118920, /10.106.138.128:33414 => /10.106.138.115:6640]
2016-01-08 21:42:34,264 | INFO | pool-28-thread-3 | OvsdbConnectionManager | 265 - org.opendaylight.ovsdb.southbound-impl - 1.2.1.SNAPSHOT | Library connected PASSIVE from /10.106.138.128:33414 to /10.106.138.115:6640
2016-01-08 21:42:34,265 | INFO | pool-28-thread-3 | OvsdbConnectionManager | 265 - org.opendaylight.ovsdb.southbound-impl - 1.2.1.SNAPSHOT | OVSDB Connection from /10.106.138.128:33414
2016-01-08 21:42:34,308 | INFO | pool-28-thread-3 | OvsdbConnectionManager | 265 - org.opendaylight.ovsdb.southbound-impl - 1.2.1.SNAPSHOT | InstanceIdentifier KeyedInstanceIdentifier

{targetType=interface org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node, path=[org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NetworkTopology, org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.Topology[key=TopologyKey [_topologyId=Uri [_value=ovsdb:1]]], org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node[key=NodeKey [_nodeId=Uri [_value=ovsdb://uuid/280dfb6f-72c4-41ea-a3d7-7002f169442f]]]]}

generated for device connection ConnectionInfo [Remote-address=10.106.138.128, Remote-port=33414, Local-address10.106.138.115, Local-port=6640, type=PASSIVE]
2016-01-08 21:42:34,309 | WARN | pool-28-thread-3 | OvsdbConnectionManager | 265 - org.opendaylight.ovsdb.southbound-impl - 1.2.1.SNAPSHOT | OVSDB entity Entity{type='ovsdb', id=/(urn:TBD:params:xml:ns:yang:network-topology?revision=2013-10-21)network-topology/topology/topology[

{(urn:TBD:params:xml:ns:yang:network-topology?revision=2013-10-21)topology-id=ovsdb:1}

]/node/node[

{(urn:TBD:params:xml:ns:yang:network-topology?revision=2013-10-21)node-id=ovsdb://uuid/280dfb6f-72c4-41ea-a3d7-7002f169442f}

]} was already registered for ownership
org.opendaylight.controller.md.sal.common.api.clustering.CandidateAlreadyRegisteredException: Candidate has already been registered for Entity{type='ovsdb', id=/(urn:TBD:params:xml:ns:yang:network-topology?revision=2013-10-21)network-topology/topology/topology[

{(urn:TBD:params:xml:ns:yang:network-topology?revision=2013-10-21)topology-id=ovsdb:1}

]/node/node[

{(urn:TBD:params:xml:ns:yang:network-topology?revision=2013-10-21)node-id=ovsdb://uuid/280dfb6f-72c4-41ea-a3d7-7002f169442f}

]}
at org.opendaylight.controller.cluster.datastore.entityownership.DistributedEntityOwnershipService.registerCandidate(DistributedEntityOwnershipService.java:140)[164:org.opendaylight.controller.sal-distributed-datastore:1.3.0.SNAPSHOT]
at org.opendaylight.ovsdb.southbound.OvsdbConnectionManager.registerEntityForOwnership(OvsdbConnectionManager.java:450)[265:org.opendaylight.ovsdb.southbound-impl:1.2.1.SNAPSHOT]
at org.opendaylight.ovsdb.southbound.OvsdbConnectionManager.connected(OvsdbConnectionManager.java:98)[265:org.opendaylight.ovsdb.southbound-impl:1.2.1.SNAPSHOT]
at org.opendaylight.ovsdb.lib.impl.OvsdbConnectionService$5.run(OvsdbConnectionService.java:375)[261:org.opendaylight.ovsdb.library:1.2.1.SNAPSHOT]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)[:1.7.0_85]
at java.util.concurrent.FutureTask.run(FutureTask.java:262)[:1.7.0_85]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:178)[:1.7.0_85]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:292)[:1.7.0_85]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)[:1.7.0_85]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)[:1.7.0_85]
at java.lang.Thread.run(Thread.java:745)[:1.7.0_85]

Many times I have tried, but I got the above behaviour.

For your information I have attached akka.conf and karaf.log.



 Comments   
Comment by ranjithkumar_t [ 09/Jan/16 ]

Attachment karaf.log has been added with description: For your reference i have attached akka.conf and karaf.log files.

Comment by Anil Vishnoi [ 02/Feb/16 ]

Hi Ranjith,

What do you mean by "two owners"? Set-manager actually points to the controller, so all the ovsdb device that needs to be managed by controller will use the same manager. So if there are X number of ovsdb devices that user want to manage through ODL controller, user will set same manager for all the X switches and in southbound plugin you will see that the controller become owner of all the X devices, because it's the only controller to whom all the devices are connected in single node installation (that's not really clustering). So eventually you will see X messages saying this southbound plugin is OWNER of device (1...X).

Please let me know if i am missing something in the reported issue.

Comment by Anil Vishnoi [ 02/Feb/16 ]

Ranjit, please reopen the bug if you think there is still an issue which we didn't tackle in this bug.

Comment by ranjithkumar_t [ 03/Feb/16 ]

This is not a bug, because i tried to registered 3 OVS having same uuid with one manager. That's why it throwing exception.

If we try with different uuid for each OVS, it working as expected. So we planned to close this bug.

Generated at Wed Feb 07 20:35:54 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.