[NETVIRT-1409] OptimisticLockFailedException from IPv6 service bind and unbind Created: 23/Aug/18  Updated: 03/Oct/18  Resolved: 24/Sep/18

Status: Verified
Project: netvirt
Component/s: ipv6service
Affects Version/s: None
Fix Version/s: Fluorine-SR1

Type: Bug Priority: Medium
Reporter: Karthikeyan Krishnan Assignee: Karthikeyan Krishnan
Resolution: Done Votes: 0
Labels: VPNV6
Remaining Estimate: 0 minutes
Time Spent: 1 week
Original Estimate: Not Specified


 Description   

The following exception was thrown by IPv6 service module during IPv6 service bind and unbind operations. This needs to be avoided during multiple IPv6 service interface binding and unbinding operations.

 

2018-08-13T08:09:10,338 | ERROR | org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.ports.rev150712.ports.attributes.ports.Port_AsyncClusteredDataTreeChangeListenerBase-DataTreeChangeHandler-0 | AsyncClusteredDataTreeChangeListenerBase | 272 - org.opendaylight.genius.mdsalutil-api - 0.4.3.SNAPSHOT | Thread terminated due to uncaught exception: org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.ports.rev150712.ports.attributes.ports.Port_AsyncClusteredDataTreeChangeListenerBase-DataTreeChangeHandler-0
java.lang.RuntimeException: OptimisticLockFailedException{message=Optimistic lock failed for path /(urn:opendaylight:genius:interfacemanager:servicebinding?revision=2016-04-06)service-bindings/services-info/services-info[

{(urn:opendaylight:genius:interfacemanager:servicebinding?revision=2016-04-06)interface-name=61dcb67d-a8d5-4d43-9d5b-63f202b2a090, (urn:opendaylight:genius:interfacemanager:servicebinding?revision=2016-04-06)service-mode=(urn:opendaylight:genius:interfacemanager:servicebinding?revision=2016-04-06)service-mode-ingress}

]/bound-services/bound-services[\{(urn:opendaylight:genius:interfacemanager:servicebinding?revision=2016-04-06)service-priority=7}], errorList=[RpcError [message=Optimistic lock failed for path /(urn:opendaylight:genius:interfacemanager:servicebinding?revision=2016-04-06)service-bindings/services-info/services-info[\{(urn:opendaylight:genius:interfacemanager:servicebinding?revision=2016-04-06)interface-name=61dcb67d-a8d5-4d43-9d5b-63f202b2a090, (urn:opendaylight:genius:interfacemanager:servicebinding?revision=2016-04-06)service-mode=(urn:opendaylight:genius:interfacemanager:servicebinding?revision=2016-04-06)service-mode-ingress}]/bound-services/bound-services[\{(urn:opendaylight:genius:interfacemanager:servicebinding?revision=2016-04-06)service-priority=7}], severity=ERROR, errorType=APPLICATION, tag=resource-denied, applicationTag=null, info=null, cause=org.opendaylight.yangtools.yang.data.api.schema.tree.ConflictingModificationAppliedException: Node was replaced by other transaction.]]}
at org.opendaylight.genius.mdsalutil.MDSALUtil.syncWrite(MDSALUtil.java:584) [272:org.opendaylight.genius.mdsalutil-api:0.4.3.SNAPSHOT]
at org.opendaylight.netvirt.ipv6service.utils.Ipv6ServiceUtils.bindIpv6Service(Ipv6ServiceUtils.java:470) [367:org.opendaylight.netvirt.ipv6service-impl:0.6.3.SNAPSHOT]
at org.opendaylight.netvirt.ipv6service.IfMgr.addHostIntf(IfMgr.java:368) [367:org.opendaylight.netvirt.ipv6service-impl:0.6.3.SNAPSHOT]
at org.opendaylight.netvirt.ipv6service.NeutronPortChangeListener.addInterfaceInfo(NeutronPortChangeListener.java:130) [367:org.opendaylight.netvirt.ipv6service-impl:0.6.3.SNAPSHOT]
at org.opendaylight.netvirt.ipv6service.NeutronPortChangeListener.add(NeutronPortChangeListener.java:68) [367:org.opendaylight.netvirt.ipv6service-impl:0.6.3.SNAPSHOT]
at org.opendaylight.netvirt.ipv6service.NeutronPortChangeListener.add(NeutronPortChangeListener.java:30) [367:org.opendaylight.netvirt.ipv6service-impl:0.6.3.SNAPSHOT]
at org.opendaylight.genius.datastoreutils.AsyncClusteredDataTreeChangeListenerBase$DataTreeChangeHandler.run(AsyncClusteredDataTreeChangeListenerBase.java:161) [272:org.opendaylight.genius.mdsalutil-api:0.4.3.SNAPSHOT]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
at java.lang.Thread.run(Thread.java:748) [?:?]
Caused by: org.opendaylight.controller.md.sal.common.api.data.OptimisticLockFailedException: Optimistic lock failed for path /(urn:opendaylight:genius:interfacemanager:servicebinding?revision=2016-04-06)service-bindings/services-info/services-info[\{(urn:opendaylight:genius:interfacemanager:servicebinding?revision=2016-04-06)interface-name=61dcb67d-a8d5-4d43-9d5b-63f202b2a090, (urn:opendaylight:genius:interfacemanager:servicebinding?revision=2016-04-06)service-mode=(urn:opendaylight:genius:interfacemanager:servicebinding?revision=2016-04-06)service-mode-ingress}]/bound-services/bound-services[\{(urn:opendaylight:genius:interfacemanager:servicebinding?revision=2016-04-06)service-priority=7}]



 Comments   
Comment by Karthikeyan Krishnan [ 24/Sep/18 ]

Please refer the below gerrit link for fix got merged into Neon

https://git.opendaylight.org/gerrit/#/c/75398/

 

Please refer the below gerrit link for fix got merged into stable/Fluorine (SR1)

https://git.opendaylight.org/gerrit/#/c/75788/

 

Please refer the below gerrit link for fix got merged into stable/oxygen (SR4)

https://git.opendaylight.org/gerrit/#/c/76331/ 

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