fix raft node access callback type
This commit is contained in:
parent
4fa562c4a1
commit
236e5f32ea
|
@ -40,17 +40,17 @@ type
|
||||||
RaftNodePersistentStorage* = ref object # Should be some kind of Persistent Transactional Store Wrapper
|
RaftNodePersistentStorage* = ref object # Should be some kind of Persistent Transactional Store Wrapper
|
||||||
|
|
||||||
# Basic modules (algos) definitions
|
# Basic modules (algos) definitions
|
||||||
RaftNodeAccessCallback[LogEntryDataType] = proc: RaftNode[LogEntryDataType] {.nimcall, gcsafe.} # This should be implementes as a closure holding the RaftNode
|
RaftNodeAccessCallback[LogEntryDataType, SmStateType] = proc: RaftNode[LogEntryDataType, SmStateType] {.nimcall, gcsafe.} # This should be implementes as a closure holding the RaftNode
|
||||||
|
|
||||||
RaftConsensusModule*[LogEntryDataType] = object of RootObj
|
RaftConsensusModule*[LogEntryDataType, SmStateType] = object of RootObj
|
||||||
stateTransitionsFsm: seq[byte] # I plan to use nim.fsm https://github.com/ba0f3/fsm.nim
|
stateTransitionsFsm: seq[byte] # I plan to use nim.fsm https://github.com/ba0f3/fsm.nim
|
||||||
raftNodeAccessCallback: RaftNodeAccessCallback[LogEntryDataType]
|
raftNodeAccessCallback: RaftNodeAccessCallback[LogEntryDataType, SmStateType]
|
||||||
|
|
||||||
RaftLogCompactionModule*[LogEntryDataType] = object of RootObj
|
RaftLogCompactionModule*[LogEntryDataType, SmStateType] = object of RootObj
|
||||||
raftNodeAccessCallback: RaftNodeAccessCallback[LogEntryDataType]
|
raftNodeAccessCallback: RaftNodeAccessCallback[LogEntryDataType, SmStateType]
|
||||||
|
|
||||||
RaftMembershipChangeModule*[LogEntryDataType] = object of RootObj
|
RaftMembershipChangeModule*[LogEntryDataType, SmStateType] = object of RootObj
|
||||||
raftNodeAccessCallback: RaftNodeAccessCallback[LogEntryDataType]
|
raftNodeAccessCallback: RaftNodeAccessCallback[LogEntryDataType, SmStateType]
|
||||||
|
|
||||||
# Callback for sending messages out of this Raft Node
|
# Callback for sending messages out of this Raft Node
|
||||||
RaftMessageId* = UUID # UUID assigned to every Raft Node Message,
|
RaftMessageId* = UUID # UUID assigned to every Raft Node Message,
|
||||||
|
@ -90,9 +90,9 @@ type
|
||||||
raftCommMutexClientResponse: Lock
|
raftCommMutexClientResponse: Lock
|
||||||
|
|
||||||
# Modules (Algos)
|
# Modules (Algos)
|
||||||
consensusModule: RaftConsensusModule[LogEntryDataType]
|
consensusModule: RaftConsensusModule[LogEntryDataType, SmStateType]
|
||||||
logCompactionModule: RaftLogCompactionModule[LogEntryDataType]
|
logCompactionModule: RaftLogCompactionModule[LogEntryDataType, SmStateType]
|
||||||
membershipChangeModule: RaftMembershipChangeModule[LogEntryDataType]
|
membershipChangeModule: RaftMembershipChangeModule[LogEntryDataType, SmStateType]
|
||||||
|
|
||||||
# Misc
|
# Misc
|
||||||
msgSendCallback: RaftMessageSendCallback
|
msgSendCallback: RaftMessageSendCallback
|
||||||
|
|
Loading…
Reference in New Issue