Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ruanhaishen
Willemt Raft
Commits
8a7b07a0
Commit
8a7b07a0
authored
Jan 25, 2016
by
Willem Thiart
Browse files
Add type to raft_entry_t
Breaking change.
parent
077e09bd
Changes
2
Hide whitespace changes
Inline
Side-by-side
include/raft.h
View file @
8a7b07a0
...
@@ -18,6 +18,14 @@ typedef enum {
...
@@ -18,6 +18,14 @@ typedef enum {
RAFT_STATE_LEADER
RAFT_STATE_LEADER
}
raft_state_e
;
}
raft_state_e
;
typedef
enum
{
RAFT_LOGTYPE_NORMAL
,
RAFT_LOGTYPE_ADD_NONVOTING_NODE
,
RAFT_LOGTYPE_ADD_NODE
,
RAFT_LOGTYPE_REMOVE_NODE
,
RAFT_LOGTYPE_NUM
,
}
raft_logtype_e
;
typedef
struct
typedef
struct
{
{
void
*
buf
;
void
*
buf
;
...
@@ -34,6 +42,9 @@ typedef struct
...
@@ -34,6 +42,9 @@ typedef struct
/** the entry's unique ID */
/** the entry's unique ID */
unsigned
int
id
;
unsigned
int
id
;
/** type of entry */
int
type
;
raft_entry_data_t
data
;
raft_entry_data_t
data
;
}
raft_entry_t
;
}
raft_entry_t
;
...
...
src/raft_server.c
View file @
8a7b07a0
...
@@ -522,6 +522,7 @@ int raft_recv_entry(raft_server_t* me_,
...
@@ -522,6 +522,7 @@ int raft_recv_entry(raft_server_t* me_,
raft_entry_t
ety
;
raft_entry_t
ety
;
ety
.
term
=
me
->
current_term
;
ety
.
term
=
me
->
current_term
;
ety
.
id
=
e
->
id
;
ety
.
id
=
e
->
id
;
ety
.
type
=
e
->
type
;
memcpy
(
&
ety
.
data
,
&
e
->
data
,
sizeof
(
raft_entry_data_t
));
memcpy
(
&
ety
.
data
,
&
e
->
data
,
sizeof
(
raft_entry_data_t
));
raft_append_entry
(
me_
,
&
ety
);
raft_append_entry
(
me_
,
&
ety
);
for
(
i
=
0
;
i
<
me
->
num_nodes
;
i
++
)
for
(
i
=
0
;
i
<
me
->
num_nodes
;
i
++
)
...
@@ -623,6 +624,7 @@ int raft_send_appendentries(raft_server_t* me_, raft_node_t* node)
...
@@ -623,6 +624,7 @@ int raft_send_appendentries(raft_server_t* me_, raft_node_t* node)
{
{
mety
.
term
=
ety
->
term
;
mety
.
term
=
ety
->
term
;
mety
.
id
=
ety
->
id
;
mety
.
id
=
ety
->
id
;
mety
.
type
=
ety
->
type
;
mety
.
data
.
len
=
ety
->
data
.
len
;
mety
.
data
.
len
=
ety
->
data
.
len
;
mety
.
data
.
buf
=
ety
->
data
.
buf
;
mety
.
data
.
buf
=
ety
->
data
.
buf
;
ae
.
entries
=
&
mety
;
ae
.
entries
=
&
mety
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment