[CONTROLLER-1658] C: odl-clustering-test-app remote to local prefix shard leader movemnet fails (rpc become prefix leader) Created: 07/May/17 Updated: 25/Jul/23 Resolved: 11/May/17 |
|
| Status: | Resolved |
| Project: | controller |
| Component/s: | clustering |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | ||
| Reporter: | Peter Gubka | Assignee: | Jakub Morvay |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Environment: |
Operating System: All |
||
| Issue Links: |
|
||||||||
| External issue ID: | 8391 | ||||||||
| Description |
|
leader movements (local->remote, remote->remote) pass, but remote->local fails with java.lang.IllegalArgumentException: Subtree DOMDataTreeIdentifier{datastore=CONFIGURATION, root=/(tag:opendaylight.org,2017:controller:yang:lowlevel:target?revision=2017-02-15)id-ints/id-int/id-int[ {(tag:opendaylight.org,2017:controller:yang:lowlevel:target?revision=2017-02-15)id=prefix-2}]} is attached to producer |
| Comments |
| Comment by Jakub Morvay [ 08/May/17 ] |
|
Seems you are calling become-prefix-leader RPC two times with same prefix parameter. In the implementation of this RPC we are creating CDSDataTreeProducer and with the help of this producer we are requesting leadership for shard that specified prefix belongs to. This producer is however not closed. Second invocation of become-prefix-leader RPC with same prefix parameter will try to create a new producer for subtree specified by prefix parameter and will fail with above-mentioned exception, because the previous producer is still opened and holds the subtree. This closes producer after leadership request: |
| Comment by Jakub Morvay [ 09/May/17 ] |