[CONTROLLER-1262] Clustering: FindPrimaryShard should return the leader's version Created: 19/Apr/15  Updated: 06/Jun/15  Resolved: 06/Jun/15

Status: Resolved
Project: controller
Component/s: mdsal
Affects Version/s: Post-Helium
Fix Version/s: None

Type: Bug
Reporter: Tom Pantelis Assignee: Tom Pantelis
Resolution: Done 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: 3020
Priority: Normal

 Description   

With the recent write-only optimizations to elide the transaction actor and go directly to the shard, we no longer send the CreateTransaction message. Therefore, the TransactionProxy doesn't know the shard's version in order to handle compatibility.

We need the FindPrimaryShard message to return the shard leader's version. This can be maintained by the ShardManager - we just need to include the version with the LeaderStateChanged message and send a LeaderStateChanged message when the leader's version changes.

To obtain the leader's version, we can include it with the AppendEntries message. The follower should also send back it's version in the AppendEntriesReply which AbstractLeader can track in the FollowerInformation. This will also lay the groundwork for a newer-version leader to lead an older-version follower.



 Comments   
Comment by Moiz Raja [ 04/Jun/15 ]

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

Comment by Tom Pantelis [ 04/Jun/15 ]

Also https://git.opendaylight.org/gerrit/#/c/21603/ which depends on the previous one.

Generated at Wed Feb 07 19:55:05 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.