[NETCONF-145] Optimistic lock failed when configuring multiple devices serially during bootup Created: 09/Feb/16  Updated: 15/Mar/19  Resolved: 13/Oct/17

Status: Resolved
Project: netconf
Component/s: netconf
Affects Version/s: None
Fix Version/s: None

Type: Bug
Reporter: Vratko Polak Assignee: Unassigned
Resolution: Won't Do Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


External issue ID: 5283

 Description   

This Beryllium issue only happens in all job [0] and in the first of two very similar suites, so this is possibly an iteration with ODL still performing installation of some features. At the end of January there were two 100% pass test runs, but since then suite always fails during configuring additional devices (towards netconf testtool).

Even with patch for better synchronization [1], suite still fails after ~20 devices [2] on Sandbox. Looking at karaf.log there, several projects are listening on changes in topology-netconf (SFC, USC, Of-config, maybe more), but the error happened just after dsbenchamrk config files were applied:

2016-02-09 12:47:16,125 | INFO | config-pusher | DsbenchmarkProvider | 334 - org.opendaylight.controller.dsbenchmark - 1.1.0.SNAPSHOT | DataStore test oper status populated: TestStatus [_execStatus=Idle, _testsCompleted=0, augmentation=[]]
2016-02-09 12:47:16,125 | INFO | config-pusher | DsbenchmarkProvider | 334 - org.opendaylight.controller.dsbenchmark - 1.1.0.SNAPSHOT | DsbenchmarkProvider Session Initiated
2016-02-09 12:47:16,205 | INFO | config-pusher | ConfigPusherImpl | 96 - org.opendaylight.controller.config-persister-impl - 0.4.0.SNAPSHOT | Successfully pushed configuration snapshot dsbenchmark-impl-default-config.xml(odl-integration-compatible-with-all,odl-integration-compatible-with-all)
2016-02-09 12:47:16,205 | INFO | config-pusher | ConfigPusherImpl | 96 - org.opendaylight.controller.config-persister-impl - 0.4.0.SNAPSHOT | Pushing configuration snapshot ntfbenchmark-impl-default-config.xml(odl-integration-compatible-with-all,odl-integration-compatible-with-all)
2016-02-09 12:47:16,348 | ERROR | entLoopGroup-2-2 | TransactionProvider | 94 - org.opendaylight.controller.config-manager-facade-xml - 0.4.0.SNAPSHOT | Exception while commit of org.opendaylight.controller:TransactionName=ConfigTransaction-366-370,type=ConfigTransaction, aborting transaction
org.opendaylight.controller.config.api.ConflictingVersionException: Optimistic lock failed. Expected parent version 369, was 366

[0] https://jenkins.opendaylight.org/releng/view/netconf/job/netconf-csit-1node-periodic-scale-all-beryllium/
[1] https://git.opendaylight.org/gerrit/31692
[2] https://jenkins.opendaylight.org/sandbox/job/netconf-csit-1node-periodic-scale-all-beryllium/2/robot/report/log.html#s1-s2-t2-k2-k4-k17-k3-k1-k2-k2-k3-k6



 Comments   
Comment by Vratko Polak [ 25/Feb/16 ]

> [0] https://jenkins.opendaylight.org/releng/view/netconf/job/netconf-csit-1node-periodic-scale-all-beryllium/

The job passes consistently now.

Comment by Vratko Polak [ 27/Jul/16 ]

This Bug re-appeared, this time in Bgpcep functional suite (Beryllium).
Overall, this happens only sporadically and in all jobs. Lowering priority.

The fix would be to have unlimited retries in Restconf, possibly with exponential back-off. But that may increase memory consumption, so WONTFIX is possible.

Comment by Tomas Cere [ 13/Oct/17 ]

This only hits cfg subsystem, so with it being deprecated everyone should move towards datastore

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