1#![allow(clippy::redundant_closure)]
7
8
9pub type ClusterID = ::std::primitive::i64;
10
11pub type GraphSpaceID = ::std::primitive::i32;
12
13pub type PartitionID = ::std::primitive::i32;
14
15pub type TermID = ::std::primitive::i64;
16
17pub type LogID = ::std::primitive::i64;
18
19pub type Port = ::std::primitive::i32;
20
21#[derive(Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
22pub struct AskForVoteRequest {
23 pub space: crate::types::GraphSpaceID,
24 pub part: crate::types::PartitionID,
25 pub candidate_addr: ::std::string::String,
26 pub candidate_port: crate::types::Port,
27 pub term: crate::types::TermID,
28 pub last_log_id: crate::types::LogID,
29 pub last_log_term: crate::types::TermID,
30 #[doc(hidden)]
35 pub _dot_dot_Default_default: self::dot_dot::OtherFields,
36}
37
38#[derive(Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
39pub struct AskForVoteResponse {
40 pub error_code: crate::types::ErrorCode,
41 #[doc(hidden)]
46 pub _dot_dot_Default_default: self::dot_dot::OtherFields,
47}
48
49#[derive(Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
50pub struct LogEntry {
51 pub cluster: crate::types::ClusterID,
52 pub log_str: ::std::vec::Vec<::std::primitive::u8>,
53 #[doc(hidden)]
58 pub _dot_dot_Default_default: self::dot_dot::OtherFields,
59}
60
61#[derive(Clone, PartialEq)]
62pub struct AppendLogRequest {
63 pub space: crate::types::GraphSpaceID,
64 pub part: crate::types::PartitionID,
65 pub current_term: crate::types::TermID,
66 pub last_log_id: crate::types::LogID,
67 pub committed_log_id: crate::types::LogID,
68 pub leader_addr: ::std::string::String,
69 pub leader_port: crate::types::Port,
70 pub last_log_term_sent: crate::types::TermID,
71 pub last_log_id_sent: crate::types::LogID,
72 pub log_term: crate::types::TermID,
73 pub log_str_list: ::std::vec::Vec<crate::types::LogEntry>,
74 pub sending_snapshot: ::std::primitive::bool,
75 #[doc(hidden)]
80 pub _dot_dot_Default_default: self::dot_dot::OtherFields,
81}
82
83#[derive(Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
84pub struct AppendLogResponse {
85 pub error_code: crate::types::ErrorCode,
86 pub current_term: crate::types::TermID,
87 pub leader_addr: ::std::string::String,
88 pub leader_port: crate::types::Port,
89 pub committed_log_id: crate::types::LogID,
90 pub last_log_id: crate::types::LogID,
91 pub last_log_term: crate::types::TermID,
92 #[doc(hidden)]
97 pub _dot_dot_Default_default: self::dot_dot::OtherFields,
98}
99
100#[derive(Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
101pub struct SendSnapshotRequest {
102 pub space: crate::types::GraphSpaceID,
103 pub part: crate::types::PartitionID,
104 pub term: crate::types::TermID,
105 pub committed_log_id: crate::types::LogID,
106 pub committed_log_term: crate::types::TermID,
107 pub leader_addr: ::std::string::String,
108 pub leader_port: crate::types::Port,
109 pub rows: ::std::vec::Vec<::std::vec::Vec<::std::primitive::u8>>,
110 pub total_size: ::std::primitive::i64,
111 pub total_count: ::std::primitive::i64,
112 pub done: ::std::primitive::bool,
113 #[doc(hidden)]
118 pub _dot_dot_Default_default: self::dot_dot::OtherFields,
119}
120
121#[derive(Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
122pub struct HeartbeatRequest {
123 pub space: crate::types::GraphSpaceID,
124 pub part: crate::types::PartitionID,
125 pub current_term: crate::types::TermID,
126 pub last_log_id: crate::types::LogID,
127 pub committed_log_id: crate::types::LogID,
128 pub leader_addr: ::std::string::String,
129 pub leader_port: crate::types::Port,
130 pub last_log_term_sent: crate::types::TermID,
131 pub last_log_id_sent: crate::types::LogID,
132 #[doc(hidden)]
137 pub _dot_dot_Default_default: self::dot_dot::OtherFields,
138}
139
140#[derive(Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
141pub struct HeartbeatResponse {
142 pub error_code: crate::types::ErrorCode,
143 pub current_term: crate::types::TermID,
144 pub leader_addr: ::std::string::String,
145 pub leader_port: crate::types::Port,
146 pub committed_log_id: crate::types::LogID,
147 pub last_log_id: crate::types::LogID,
148 pub last_log_term: crate::types::TermID,
149 #[doc(hidden)]
154 pub _dot_dot_Default_default: self::dot_dot::OtherFields,
155}
156
157#[derive(Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
158pub struct SendSnapshotResponse {
159 pub error_code: crate::types::ErrorCode,
160 #[doc(hidden)]
165 pub _dot_dot_Default_default: self::dot_dot::OtherFields,
166}
167
168#[derive(Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
169pub struct ErrorCode(pub ::std::primitive::i32);
170
171impl ErrorCode {
172 pub const SUCCEEDED: Self = ErrorCode(0i32);
173 pub const E_LOG_GAP: Self = ErrorCode(-1i32);
174 pub const E_LOG_STALE: Self = ErrorCode(-2i32);
175 pub const E_MISSING_COMMIT: Self = ErrorCode(-3i32);
176 pub const E_WAITING_SNAPSHOT: Self = ErrorCode(-4i32);
177 pub const E_UNKNOWN_PART: Self = ErrorCode(-5i32);
178 pub const E_TERM_OUT_OF_DATE: Self = ErrorCode(-6i32);
179 pub const E_LAST_LOG_TERM_TOO_OLD: Self = ErrorCode(-7i32);
180 pub const E_BAD_STATE: Self = ErrorCode(-8i32);
181 pub const E_WRONG_LEADER: Self = ErrorCode(-9i32);
182 pub const E_WAL_FAIL: Self = ErrorCode(-10i32);
183 pub const E_NOT_READY: Self = ErrorCode(-11i32);
184 pub const E_HOST_STOPPED: Self = ErrorCode(-12i32);
185 pub const E_NOT_A_LEADER: Self = ErrorCode(-13i32);
186 pub const E_HOST_DISCONNECTED: Self = ErrorCode(-14i32);
187 pub const E_TOO_MANY_REQUESTS: Self = ErrorCode(-15i32);
188 pub const E_PERSIST_SNAPSHOT_FAILED: Self = ErrorCode(-16i32);
189 pub const E_BAD_ROLE: Self = ErrorCode(-17i32);
190 pub const E_EXCEPTION: Self = ErrorCode(-20i32);
191}
192
193impl ::fbthrift::ThriftEnum for ErrorCode {
194 fn enumerate() -> &'static [(Self, &'static str)] {
195 &[
196 (Self::SUCCEEDED, "SUCCEEDED"),
197 (Self::E_LOG_GAP, "E_LOG_GAP"),
198 (Self::E_LOG_STALE, "E_LOG_STALE"),
199 (Self::E_MISSING_COMMIT, "E_MISSING_COMMIT"),
200 (Self::E_WAITING_SNAPSHOT, "E_WAITING_SNAPSHOT"),
201 (Self::E_UNKNOWN_PART, "E_UNKNOWN_PART"),
202 (Self::E_TERM_OUT_OF_DATE, "E_TERM_OUT_OF_DATE"),
203 (Self::E_LAST_LOG_TERM_TOO_OLD, "E_LAST_LOG_TERM_TOO_OLD"),
204 (Self::E_BAD_STATE, "E_BAD_STATE"),
205 (Self::E_WRONG_LEADER, "E_WRONG_LEADER"),
206 (Self::E_WAL_FAIL, "E_WAL_FAIL"),
207 (Self::E_NOT_READY, "E_NOT_READY"),
208 (Self::E_HOST_STOPPED, "E_HOST_STOPPED"),
209 (Self::E_NOT_A_LEADER, "E_NOT_A_LEADER"),
210 (Self::E_HOST_DISCONNECTED, "E_HOST_DISCONNECTED"),
211 (Self::E_TOO_MANY_REQUESTS, "E_TOO_MANY_REQUESTS"),
212 (Self::E_PERSIST_SNAPSHOT_FAILED, "E_PERSIST_SNAPSHOT_FAILED"),
213 (Self::E_BAD_ROLE, "E_BAD_ROLE"),
214 (Self::E_EXCEPTION, "E_EXCEPTION"),
215 ]
216 }
217
218 fn variants() -> &'static [&'static str] {
219 &[
220 "SUCCEEDED",
221 "E_LOG_GAP",
222 "E_LOG_STALE",
223 "E_MISSING_COMMIT",
224 "E_WAITING_SNAPSHOT",
225 "E_UNKNOWN_PART",
226 "E_TERM_OUT_OF_DATE",
227 "E_LAST_LOG_TERM_TOO_OLD",
228 "E_BAD_STATE",
229 "E_WRONG_LEADER",
230 "E_WAL_FAIL",
231 "E_NOT_READY",
232 "E_HOST_STOPPED",
233 "E_NOT_A_LEADER",
234 "E_HOST_DISCONNECTED",
235 "E_TOO_MANY_REQUESTS",
236 "E_PERSIST_SNAPSHOT_FAILED",
237 "E_BAD_ROLE",
238 "E_EXCEPTION",
239 ]
240 }
241
242 fn variant_values() -> &'static [Self] {
243 &[
244 Self::SUCCEEDED,
245 Self::E_LOG_GAP,
246 Self::E_LOG_STALE,
247 Self::E_MISSING_COMMIT,
248 Self::E_WAITING_SNAPSHOT,
249 Self::E_UNKNOWN_PART,
250 Self::E_TERM_OUT_OF_DATE,
251 Self::E_LAST_LOG_TERM_TOO_OLD,
252 Self::E_BAD_STATE,
253 Self::E_WRONG_LEADER,
254 Self::E_WAL_FAIL,
255 Self::E_NOT_READY,
256 Self::E_HOST_STOPPED,
257 Self::E_NOT_A_LEADER,
258 Self::E_HOST_DISCONNECTED,
259 Self::E_TOO_MANY_REQUESTS,
260 Self::E_PERSIST_SNAPSHOT_FAILED,
261 Self::E_BAD_ROLE,
262 Self::E_EXCEPTION,
263 ]
264 }
265}
266
267impl ::std::default::Default for ErrorCode {
268 fn default() -> Self {
269 Self(::fbthrift::__UNKNOWN_ID)
270 }
271}
272
273impl<'a> ::std::convert::From<&'a ErrorCode> for ::std::primitive::i32 {
274 #[inline]
275 fn from(x: &'a ErrorCode) -> Self {
276 x.0
277 }
278}
279
280impl ::std::convert::From<ErrorCode> for ::std::primitive::i32 {
281 #[inline]
282 fn from(x: ErrorCode) -> Self {
283 x.0
284 }
285}
286
287impl ::std::convert::From<::std::primitive::i32> for ErrorCode {
288 #[inline]
289 fn from(x: ::std::primitive::i32) -> Self {
290 Self(x)
291 }
292}
293
294impl ::std::fmt::Display for ErrorCode {
295 fn fmt(&self, fmt: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
296 static VARIANTS_BY_NUMBER: &[(&::std::primitive::str, ::std::primitive::i32)] = &[
297 ("E_EXCEPTION", -20),
298 ("E_BAD_ROLE", -17),
299 ("E_PERSIST_SNAPSHOT_FAILED", -16),
300 ("E_TOO_MANY_REQUESTS", -15),
301 ("E_HOST_DISCONNECTED", -14),
302 ("E_NOT_A_LEADER", -13),
303 ("E_HOST_STOPPED", -12),
304 ("E_NOT_READY", -11),
305 ("E_WAL_FAIL", -10),
306 ("E_WRONG_LEADER", -9),
307 ("E_BAD_STATE", -8),
308 ("E_LAST_LOG_TERM_TOO_OLD", -7),
309 ("E_TERM_OUT_OF_DATE", -6),
310 ("E_UNKNOWN_PART", -5),
311 ("E_WAITING_SNAPSHOT", -4),
312 ("E_MISSING_COMMIT", -3),
313 ("E_LOG_STALE", -2),
314 ("E_LOG_GAP", -1),
315 ("SUCCEEDED", 0),
316 ];
317 ::fbthrift::help::enum_display(VARIANTS_BY_NUMBER, fmt, self.0)
318 }
319}
320
321impl ::std::fmt::Debug for ErrorCode {
322 fn fmt(&self, fmt: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
323 write!(fmt, "ErrorCode::{}", self)
324 }
325}
326
327impl ::std::str::FromStr for ErrorCode {
328 type Err = ::anyhow::Error;
329
330 fn from_str(string: &::std::primitive::str) -> ::std::result::Result<Self, Self::Err> {
331 static VARIANTS_BY_NAME: &[(&::std::primitive::str, ::std::primitive::i32)] = &[
332 ("E_BAD_ROLE", -17),
333 ("E_BAD_STATE", -8),
334 ("E_EXCEPTION", -20),
335 ("E_HOST_DISCONNECTED", -14),
336 ("E_HOST_STOPPED", -12),
337 ("E_LAST_LOG_TERM_TOO_OLD", -7),
338 ("E_LOG_GAP", -1),
339 ("E_LOG_STALE", -2),
340 ("E_MISSING_COMMIT", -3),
341 ("E_NOT_A_LEADER", -13),
342 ("E_NOT_READY", -11),
343 ("E_PERSIST_SNAPSHOT_FAILED", -16),
344 ("E_TERM_OUT_OF_DATE", -6),
345 ("E_TOO_MANY_REQUESTS", -15),
346 ("E_UNKNOWN_PART", -5),
347 ("E_WAITING_SNAPSHOT", -4),
348 ("E_WAL_FAIL", -10),
349 ("E_WRONG_LEADER", -9),
350 ("SUCCEEDED", 0),
351 ];
352 ::fbthrift::help::enum_from_str(VARIANTS_BY_NAME, string, "ErrorCode").map(Self)
353 }
354}
355
356impl ::fbthrift::GetTType for ErrorCode {
357 const TTYPE: ::fbthrift::TType = ::fbthrift::TType::I32;
358}
359
360impl<P> ::fbthrift::Serialize<P> for ErrorCode
361where
362 P: ::fbthrift::ProtocolWriter,
363{
364 #[inline]
365 fn write(&self, p: &mut P) {
366 p.write_i32(self.into())
367 }
368}
369
370impl<P> ::fbthrift::Deserialize<P> for ErrorCode
371where
372 P: ::fbthrift::ProtocolReader,
373{
374 #[inline]
375 fn read(p: &mut P) -> ::anyhow::Result<Self> {
376 ::std::result::Result::Ok(Self::from(p.read_i32()?))
377 }
378}
379
380
381
382
383
384
385
386#[allow(clippy::derivable_impls)]
387impl ::std::default::Default for self::AskForVoteRequest {
388 fn default() -> Self {
389 Self {
390 space: ::std::default::Default::default(),
391 part: ::std::default::Default::default(),
392 candidate_addr: ::std::default::Default::default(),
393 candidate_port: ::std::default::Default::default(),
394 term: ::std::default::Default::default(),
395 last_log_id: ::std::default::Default::default(),
396 last_log_term: ::std::default::Default::default(),
397 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
398 }
399 }
400}
401
402impl ::std::fmt::Debug for self::AskForVoteRequest {
403 fn fmt(&self, formatter: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
404 formatter
405 .debug_struct("AskForVoteRequest")
406 .field("space", &self.space)
407 .field("part", &self.part)
408 .field("candidate_addr", &self.candidate_addr)
409 .field("candidate_port", &self.candidate_port)
410 .field("term", &self.term)
411 .field("last_log_id", &self.last_log_id)
412 .field("last_log_term", &self.last_log_term)
413 .finish()
414 }
415}
416
417unsafe impl ::std::marker::Send for self::AskForVoteRequest {}
418unsafe impl ::std::marker::Sync for self::AskForVoteRequest {}
419
420impl ::fbthrift::GetTType for self::AskForVoteRequest {
421 const TTYPE: ::fbthrift::TType = ::fbthrift::TType::Struct;
422}
423
424impl<P> ::fbthrift::Serialize<P> for self::AskForVoteRequest
425where
426 P: ::fbthrift::ProtocolWriter,
427{
428 fn write(&self, p: &mut P) {
429 p.write_struct_begin("AskForVoteRequest");
430 p.write_field_begin("space", ::fbthrift::TType::I32, 1);
431 ::fbthrift::Serialize::write(&self.space, p);
432 p.write_field_end();
433 p.write_field_begin("part", ::fbthrift::TType::I32, 2);
434 ::fbthrift::Serialize::write(&self.part, p);
435 p.write_field_end();
436 p.write_field_begin("candidate_addr", ::fbthrift::TType::String, 3);
437 ::fbthrift::Serialize::write(&self.candidate_addr, p);
438 p.write_field_end();
439 p.write_field_begin("candidate_port", ::fbthrift::TType::I32, 4);
440 ::fbthrift::Serialize::write(&self.candidate_port, p);
441 p.write_field_end();
442 p.write_field_begin("term", ::fbthrift::TType::I64, 5);
443 ::fbthrift::Serialize::write(&self.term, p);
444 p.write_field_end();
445 p.write_field_begin("last_log_id", ::fbthrift::TType::I64, 6);
446 ::fbthrift::Serialize::write(&self.last_log_id, p);
447 p.write_field_end();
448 p.write_field_begin("last_log_term", ::fbthrift::TType::I64, 7);
449 ::fbthrift::Serialize::write(&self.last_log_term, p);
450 p.write_field_end();
451 p.write_field_stop();
452 p.write_struct_end();
453 }
454}
455
456impl<P> ::fbthrift::Deserialize<P> for self::AskForVoteRequest
457where
458 P: ::fbthrift::ProtocolReader,
459{
460 fn read(p: &mut P) -> ::anyhow::Result<Self> {
461 static FIELDS: &[::fbthrift::Field] = &[
462 ::fbthrift::Field::new("candidate_addr", ::fbthrift::TType::String, 3),
463 ::fbthrift::Field::new("candidate_port", ::fbthrift::TType::I32, 4),
464 ::fbthrift::Field::new("last_log_id", ::fbthrift::TType::I64, 6),
465 ::fbthrift::Field::new("last_log_term", ::fbthrift::TType::I64, 7),
466 ::fbthrift::Field::new("part", ::fbthrift::TType::I32, 2),
467 ::fbthrift::Field::new("space", ::fbthrift::TType::I32, 1),
468 ::fbthrift::Field::new("term", ::fbthrift::TType::I64, 5),
469 ];
470 let mut field_space = ::std::option::Option::None;
471 let mut field_part = ::std::option::Option::None;
472 let mut field_candidate_addr = ::std::option::Option::None;
473 let mut field_candidate_port = ::std::option::Option::None;
474 let mut field_term = ::std::option::Option::None;
475 let mut field_last_log_id = ::std::option::Option::None;
476 let mut field_last_log_term = ::std::option::Option::None;
477 let _ = p.read_struct_begin(|_| ())?;
478 loop {
479 let (_, fty, fid) = p.read_field_begin(|_| (), FIELDS)?;
480 match (fty, fid as ::std::primitive::i32) {
481 (::fbthrift::TType::Stop, _) => break,
482 (::fbthrift::TType::I32, 1) => field_space = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
483 (::fbthrift::TType::I32, 2) => field_part = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
484 (::fbthrift::TType::String, 3) => field_candidate_addr = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
485 (::fbthrift::TType::I32, 4) => field_candidate_port = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
486 (::fbthrift::TType::I64, 5) => field_term = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
487 (::fbthrift::TType::I64, 6) => field_last_log_id = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
488 (::fbthrift::TType::I64, 7) => field_last_log_term = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
489 (fty, _) => p.skip(fty)?,
490 }
491 p.read_field_end()?;
492 }
493 p.read_struct_end()?;
494 ::std::result::Result::Ok(Self {
495 space: field_space.unwrap_or_default(),
496 part: field_part.unwrap_or_default(),
497 candidate_addr: field_candidate_addr.unwrap_or_default(),
498 candidate_port: field_candidate_port.unwrap_or_default(),
499 term: field_term.unwrap_or_default(),
500 last_log_id: field_last_log_id.unwrap_or_default(),
501 last_log_term: field_last_log_term.unwrap_or_default(),
502 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
503 })
504 }
505}
506
507
508#[allow(clippy::derivable_impls)]
509impl ::std::default::Default for self::AskForVoteResponse {
510 fn default() -> Self {
511 Self {
512 error_code: ::std::default::Default::default(),
513 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
514 }
515 }
516}
517
518impl ::std::fmt::Debug for self::AskForVoteResponse {
519 fn fmt(&self, formatter: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
520 formatter
521 .debug_struct("AskForVoteResponse")
522 .field("error_code", &self.error_code)
523 .finish()
524 }
525}
526
527unsafe impl ::std::marker::Send for self::AskForVoteResponse {}
528unsafe impl ::std::marker::Sync for self::AskForVoteResponse {}
529
530impl ::fbthrift::GetTType for self::AskForVoteResponse {
531 const TTYPE: ::fbthrift::TType = ::fbthrift::TType::Struct;
532}
533
534impl<P> ::fbthrift::Serialize<P> for self::AskForVoteResponse
535where
536 P: ::fbthrift::ProtocolWriter,
537{
538 fn write(&self, p: &mut P) {
539 p.write_struct_begin("AskForVoteResponse");
540 p.write_field_begin("error_code", ::fbthrift::TType::I32, 1);
541 ::fbthrift::Serialize::write(&self.error_code, p);
542 p.write_field_end();
543 p.write_field_stop();
544 p.write_struct_end();
545 }
546}
547
548impl<P> ::fbthrift::Deserialize<P> for self::AskForVoteResponse
549where
550 P: ::fbthrift::ProtocolReader,
551{
552 fn read(p: &mut P) -> ::anyhow::Result<Self> {
553 static FIELDS: &[::fbthrift::Field] = &[
554 ::fbthrift::Field::new("error_code", ::fbthrift::TType::I32, 1),
555 ];
556 let mut field_error_code = ::std::option::Option::None;
557 let _ = p.read_struct_begin(|_| ())?;
558 loop {
559 let (_, fty, fid) = p.read_field_begin(|_| (), FIELDS)?;
560 match (fty, fid as ::std::primitive::i32) {
561 (::fbthrift::TType::Stop, _) => break,
562 (::fbthrift::TType::I32, 1) => field_error_code = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
563 (fty, _) => p.skip(fty)?,
564 }
565 p.read_field_end()?;
566 }
567 p.read_struct_end()?;
568 ::std::result::Result::Ok(Self {
569 error_code: field_error_code.unwrap_or_default(),
570 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
571 })
572 }
573}
574
575
576#[allow(clippy::derivable_impls)]
577impl ::std::default::Default for self::LogEntry {
578 fn default() -> Self {
579 Self {
580 cluster: ::std::default::Default::default(),
581 log_str: ::std::default::Default::default(),
582 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
583 }
584 }
585}
586
587impl ::std::fmt::Debug for self::LogEntry {
588 fn fmt(&self, formatter: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
589 formatter
590 .debug_struct("LogEntry")
591 .field("cluster", &self.cluster)
592 .field("log_str", &self.log_str)
593 .finish()
594 }
595}
596
597unsafe impl ::std::marker::Send for self::LogEntry {}
598unsafe impl ::std::marker::Sync for self::LogEntry {}
599
600impl ::fbthrift::GetTType for self::LogEntry {
601 const TTYPE: ::fbthrift::TType = ::fbthrift::TType::Struct;
602}
603
604impl<P> ::fbthrift::Serialize<P> for self::LogEntry
605where
606 P: ::fbthrift::ProtocolWriter,
607{
608 fn write(&self, p: &mut P) {
609 p.write_struct_begin("LogEntry");
610 p.write_field_begin("cluster", ::fbthrift::TType::I64, 1);
611 ::fbthrift::Serialize::write(&self.cluster, p);
612 p.write_field_end();
613 p.write_field_begin("log_str", ::fbthrift::TType::String, 2);
614 ::fbthrift::Serialize::write(&self.log_str, p);
615 p.write_field_end();
616 p.write_field_stop();
617 p.write_struct_end();
618 }
619}
620
621impl<P> ::fbthrift::Deserialize<P> for self::LogEntry
622where
623 P: ::fbthrift::ProtocolReader,
624{
625 fn read(p: &mut P) -> ::anyhow::Result<Self> {
626 static FIELDS: &[::fbthrift::Field] = &[
627 ::fbthrift::Field::new("cluster", ::fbthrift::TType::I64, 1),
628 ::fbthrift::Field::new("log_str", ::fbthrift::TType::String, 2),
629 ];
630 let mut field_cluster = ::std::option::Option::None;
631 let mut field_log_str = ::std::option::Option::None;
632 let _ = p.read_struct_begin(|_| ())?;
633 loop {
634 let (_, fty, fid) = p.read_field_begin(|_| (), FIELDS)?;
635 match (fty, fid as ::std::primitive::i32) {
636 (::fbthrift::TType::Stop, _) => break,
637 (::fbthrift::TType::I64, 1) => field_cluster = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
638 (::fbthrift::TType::String, 2) => field_log_str = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
639 (fty, _) => p.skip(fty)?,
640 }
641 p.read_field_end()?;
642 }
643 p.read_struct_end()?;
644 ::std::result::Result::Ok(Self {
645 cluster: field_cluster.unwrap_or_default(),
646 log_str: field_log_str.unwrap_or_default(),
647 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
648 })
649 }
650}
651
652
653#[allow(clippy::derivable_impls)]
654impl ::std::default::Default for self::AppendLogRequest {
655 fn default() -> Self {
656 Self {
657 space: ::std::default::Default::default(),
658 part: ::std::default::Default::default(),
659 current_term: ::std::default::Default::default(),
660 last_log_id: ::std::default::Default::default(),
661 committed_log_id: ::std::default::Default::default(),
662 leader_addr: ::std::default::Default::default(),
663 leader_port: ::std::default::Default::default(),
664 last_log_term_sent: ::std::default::Default::default(),
665 last_log_id_sent: ::std::default::Default::default(),
666 log_term: ::std::default::Default::default(),
667 log_str_list: ::std::default::Default::default(),
668 sending_snapshot: ::std::default::Default::default(),
669 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
670 }
671 }
672}
673
674impl ::std::fmt::Debug for self::AppendLogRequest {
675 fn fmt(&self, formatter: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
676 formatter
677 .debug_struct("AppendLogRequest")
678 .field("space", &self.space)
679 .field("part", &self.part)
680 .field("current_term", &self.current_term)
681 .field("last_log_id", &self.last_log_id)
682 .field("committed_log_id", &self.committed_log_id)
683 .field("leader_addr", &self.leader_addr)
684 .field("leader_port", &self.leader_port)
685 .field("last_log_term_sent", &self.last_log_term_sent)
686 .field("last_log_id_sent", &self.last_log_id_sent)
687 .field("log_term", &self.log_term)
688 .field("log_str_list", &self.log_str_list)
689 .field("sending_snapshot", &self.sending_snapshot)
690 .finish()
691 }
692}
693
694unsafe impl ::std::marker::Send for self::AppendLogRequest {}
695unsafe impl ::std::marker::Sync for self::AppendLogRequest {}
696
697impl ::fbthrift::GetTType for self::AppendLogRequest {
698 const TTYPE: ::fbthrift::TType = ::fbthrift::TType::Struct;
699}
700
701impl<P> ::fbthrift::Serialize<P> for self::AppendLogRequest
702where
703 P: ::fbthrift::ProtocolWriter,
704{
705 fn write(&self, p: &mut P) {
706 p.write_struct_begin("AppendLogRequest");
707 p.write_field_begin("space", ::fbthrift::TType::I32, 1);
708 ::fbthrift::Serialize::write(&self.space, p);
709 p.write_field_end();
710 p.write_field_begin("part", ::fbthrift::TType::I32, 2);
711 ::fbthrift::Serialize::write(&self.part, p);
712 p.write_field_end();
713 p.write_field_begin("current_term", ::fbthrift::TType::I64, 3);
714 ::fbthrift::Serialize::write(&self.current_term, p);
715 p.write_field_end();
716 p.write_field_begin("last_log_id", ::fbthrift::TType::I64, 4);
717 ::fbthrift::Serialize::write(&self.last_log_id, p);
718 p.write_field_end();
719 p.write_field_begin("committed_log_id", ::fbthrift::TType::I64, 5);
720 ::fbthrift::Serialize::write(&self.committed_log_id, p);
721 p.write_field_end();
722 p.write_field_begin("leader_addr", ::fbthrift::TType::String, 6);
723 ::fbthrift::Serialize::write(&self.leader_addr, p);
724 p.write_field_end();
725 p.write_field_begin("leader_port", ::fbthrift::TType::I32, 7);
726 ::fbthrift::Serialize::write(&self.leader_port, p);
727 p.write_field_end();
728 p.write_field_begin("last_log_term_sent", ::fbthrift::TType::I64, 8);
729 ::fbthrift::Serialize::write(&self.last_log_term_sent, p);
730 p.write_field_end();
731 p.write_field_begin("last_log_id_sent", ::fbthrift::TType::I64, 9);
732 ::fbthrift::Serialize::write(&self.last_log_id_sent, p);
733 p.write_field_end();
734 p.write_field_begin("log_term", ::fbthrift::TType::I64, 10);
735 ::fbthrift::Serialize::write(&self.log_term, p);
736 p.write_field_end();
737 p.write_field_begin("log_str_list", ::fbthrift::TType::List, 11);
738 ::fbthrift::Serialize::write(&self.log_str_list, p);
739 p.write_field_end();
740 p.write_field_begin("sending_snapshot", ::fbthrift::TType::Bool, 12);
741 ::fbthrift::Serialize::write(&self.sending_snapshot, p);
742 p.write_field_end();
743 p.write_field_stop();
744 p.write_struct_end();
745 }
746}
747
748impl<P> ::fbthrift::Deserialize<P> for self::AppendLogRequest
749where
750 P: ::fbthrift::ProtocolReader,
751{
752 fn read(p: &mut P) -> ::anyhow::Result<Self> {
753 static FIELDS: &[::fbthrift::Field] = &[
754 ::fbthrift::Field::new("committed_log_id", ::fbthrift::TType::I64, 5),
755 ::fbthrift::Field::new("current_term", ::fbthrift::TType::I64, 3),
756 ::fbthrift::Field::new("last_log_id", ::fbthrift::TType::I64, 4),
757 ::fbthrift::Field::new("last_log_id_sent", ::fbthrift::TType::I64, 9),
758 ::fbthrift::Field::new("last_log_term_sent", ::fbthrift::TType::I64, 8),
759 ::fbthrift::Field::new("leader_addr", ::fbthrift::TType::String, 6),
760 ::fbthrift::Field::new("leader_port", ::fbthrift::TType::I32, 7),
761 ::fbthrift::Field::new("log_str_list", ::fbthrift::TType::List, 11),
762 ::fbthrift::Field::new("log_term", ::fbthrift::TType::I64, 10),
763 ::fbthrift::Field::new("part", ::fbthrift::TType::I32, 2),
764 ::fbthrift::Field::new("sending_snapshot", ::fbthrift::TType::Bool, 12),
765 ::fbthrift::Field::new("space", ::fbthrift::TType::I32, 1),
766 ];
767 let mut field_space = ::std::option::Option::None;
768 let mut field_part = ::std::option::Option::None;
769 let mut field_current_term = ::std::option::Option::None;
770 let mut field_last_log_id = ::std::option::Option::None;
771 let mut field_committed_log_id = ::std::option::Option::None;
772 let mut field_leader_addr = ::std::option::Option::None;
773 let mut field_leader_port = ::std::option::Option::None;
774 let mut field_last_log_term_sent = ::std::option::Option::None;
775 let mut field_last_log_id_sent = ::std::option::Option::None;
776 let mut field_log_term = ::std::option::Option::None;
777 let mut field_log_str_list = ::std::option::Option::None;
778 let mut field_sending_snapshot = ::std::option::Option::None;
779 let _ = p.read_struct_begin(|_| ())?;
780 loop {
781 let (_, fty, fid) = p.read_field_begin(|_| (), FIELDS)?;
782 match (fty, fid as ::std::primitive::i32) {
783 (::fbthrift::TType::Stop, _) => break,
784 (::fbthrift::TType::I32, 1) => field_space = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
785 (::fbthrift::TType::I32, 2) => field_part = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
786 (::fbthrift::TType::I64, 3) => field_current_term = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
787 (::fbthrift::TType::I64, 4) => field_last_log_id = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
788 (::fbthrift::TType::I64, 5) => field_committed_log_id = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
789 (::fbthrift::TType::String, 6) => field_leader_addr = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
790 (::fbthrift::TType::I32, 7) => field_leader_port = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
791 (::fbthrift::TType::I64, 8) => field_last_log_term_sent = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
792 (::fbthrift::TType::I64, 9) => field_last_log_id_sent = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
793 (::fbthrift::TType::I64, 10) => field_log_term = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
794 (::fbthrift::TType::List, 11) => field_log_str_list = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
795 (::fbthrift::TType::Bool, 12) => field_sending_snapshot = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
796 (fty, _) => p.skip(fty)?,
797 }
798 p.read_field_end()?;
799 }
800 p.read_struct_end()?;
801 ::std::result::Result::Ok(Self {
802 space: field_space.unwrap_or_default(),
803 part: field_part.unwrap_or_default(),
804 current_term: field_current_term.unwrap_or_default(),
805 last_log_id: field_last_log_id.unwrap_or_default(),
806 committed_log_id: field_committed_log_id.unwrap_or_default(),
807 leader_addr: field_leader_addr.unwrap_or_default(),
808 leader_port: field_leader_port.unwrap_or_default(),
809 last_log_term_sent: field_last_log_term_sent.unwrap_or_default(),
810 last_log_id_sent: field_last_log_id_sent.unwrap_or_default(),
811 log_term: field_log_term.unwrap_or_default(),
812 log_str_list: field_log_str_list.unwrap_or_default(),
813 sending_snapshot: field_sending_snapshot.unwrap_or_default(),
814 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
815 })
816 }
817}
818
819
820#[allow(clippy::derivable_impls)]
821impl ::std::default::Default for self::AppendLogResponse {
822 fn default() -> Self {
823 Self {
824 error_code: ::std::default::Default::default(),
825 current_term: ::std::default::Default::default(),
826 leader_addr: ::std::default::Default::default(),
827 leader_port: ::std::default::Default::default(),
828 committed_log_id: ::std::default::Default::default(),
829 last_log_id: ::std::default::Default::default(),
830 last_log_term: ::std::default::Default::default(),
831 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
832 }
833 }
834}
835
836impl ::std::fmt::Debug for self::AppendLogResponse {
837 fn fmt(&self, formatter: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
838 formatter
839 .debug_struct("AppendLogResponse")
840 .field("error_code", &self.error_code)
841 .field("current_term", &self.current_term)
842 .field("leader_addr", &self.leader_addr)
843 .field("leader_port", &self.leader_port)
844 .field("committed_log_id", &self.committed_log_id)
845 .field("last_log_id", &self.last_log_id)
846 .field("last_log_term", &self.last_log_term)
847 .finish()
848 }
849}
850
851unsafe impl ::std::marker::Send for self::AppendLogResponse {}
852unsafe impl ::std::marker::Sync for self::AppendLogResponse {}
853
854impl ::fbthrift::GetTType for self::AppendLogResponse {
855 const TTYPE: ::fbthrift::TType = ::fbthrift::TType::Struct;
856}
857
858impl<P> ::fbthrift::Serialize<P> for self::AppendLogResponse
859where
860 P: ::fbthrift::ProtocolWriter,
861{
862 fn write(&self, p: &mut P) {
863 p.write_struct_begin("AppendLogResponse");
864 p.write_field_begin("error_code", ::fbthrift::TType::I32, 1);
865 ::fbthrift::Serialize::write(&self.error_code, p);
866 p.write_field_end();
867 p.write_field_begin("current_term", ::fbthrift::TType::I64, 2);
868 ::fbthrift::Serialize::write(&self.current_term, p);
869 p.write_field_end();
870 p.write_field_begin("leader_addr", ::fbthrift::TType::String, 3);
871 ::fbthrift::Serialize::write(&self.leader_addr, p);
872 p.write_field_end();
873 p.write_field_begin("leader_port", ::fbthrift::TType::I32, 4);
874 ::fbthrift::Serialize::write(&self.leader_port, p);
875 p.write_field_end();
876 p.write_field_begin("committed_log_id", ::fbthrift::TType::I64, 5);
877 ::fbthrift::Serialize::write(&self.committed_log_id, p);
878 p.write_field_end();
879 p.write_field_begin("last_log_id", ::fbthrift::TType::I64, 6);
880 ::fbthrift::Serialize::write(&self.last_log_id, p);
881 p.write_field_end();
882 p.write_field_begin("last_log_term", ::fbthrift::TType::I64, 7);
883 ::fbthrift::Serialize::write(&self.last_log_term, p);
884 p.write_field_end();
885 p.write_field_stop();
886 p.write_struct_end();
887 }
888}
889
890impl<P> ::fbthrift::Deserialize<P> for self::AppendLogResponse
891where
892 P: ::fbthrift::ProtocolReader,
893{
894 fn read(p: &mut P) -> ::anyhow::Result<Self> {
895 static FIELDS: &[::fbthrift::Field] = &[
896 ::fbthrift::Field::new("committed_log_id", ::fbthrift::TType::I64, 5),
897 ::fbthrift::Field::new("current_term", ::fbthrift::TType::I64, 2),
898 ::fbthrift::Field::new("error_code", ::fbthrift::TType::I32, 1),
899 ::fbthrift::Field::new("last_log_id", ::fbthrift::TType::I64, 6),
900 ::fbthrift::Field::new("last_log_term", ::fbthrift::TType::I64, 7),
901 ::fbthrift::Field::new("leader_addr", ::fbthrift::TType::String, 3),
902 ::fbthrift::Field::new("leader_port", ::fbthrift::TType::I32, 4),
903 ];
904 let mut field_error_code = ::std::option::Option::None;
905 let mut field_current_term = ::std::option::Option::None;
906 let mut field_leader_addr = ::std::option::Option::None;
907 let mut field_leader_port = ::std::option::Option::None;
908 let mut field_committed_log_id = ::std::option::Option::None;
909 let mut field_last_log_id = ::std::option::Option::None;
910 let mut field_last_log_term = ::std::option::Option::None;
911 let _ = p.read_struct_begin(|_| ())?;
912 loop {
913 let (_, fty, fid) = p.read_field_begin(|_| (), FIELDS)?;
914 match (fty, fid as ::std::primitive::i32) {
915 (::fbthrift::TType::Stop, _) => break,
916 (::fbthrift::TType::I32, 1) => field_error_code = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
917 (::fbthrift::TType::I64, 2) => field_current_term = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
918 (::fbthrift::TType::String, 3) => field_leader_addr = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
919 (::fbthrift::TType::I32, 4) => field_leader_port = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
920 (::fbthrift::TType::I64, 5) => field_committed_log_id = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
921 (::fbthrift::TType::I64, 6) => field_last_log_id = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
922 (::fbthrift::TType::I64, 7) => field_last_log_term = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
923 (fty, _) => p.skip(fty)?,
924 }
925 p.read_field_end()?;
926 }
927 p.read_struct_end()?;
928 ::std::result::Result::Ok(Self {
929 error_code: field_error_code.unwrap_or_default(),
930 current_term: field_current_term.unwrap_or_default(),
931 leader_addr: field_leader_addr.unwrap_or_default(),
932 leader_port: field_leader_port.unwrap_or_default(),
933 committed_log_id: field_committed_log_id.unwrap_or_default(),
934 last_log_id: field_last_log_id.unwrap_or_default(),
935 last_log_term: field_last_log_term.unwrap_or_default(),
936 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
937 })
938 }
939}
940
941
942#[allow(clippy::derivable_impls)]
943impl ::std::default::Default for self::SendSnapshotRequest {
944 fn default() -> Self {
945 Self {
946 space: ::std::default::Default::default(),
947 part: ::std::default::Default::default(),
948 term: ::std::default::Default::default(),
949 committed_log_id: ::std::default::Default::default(),
950 committed_log_term: ::std::default::Default::default(),
951 leader_addr: ::std::default::Default::default(),
952 leader_port: ::std::default::Default::default(),
953 rows: ::std::default::Default::default(),
954 total_size: ::std::default::Default::default(),
955 total_count: ::std::default::Default::default(),
956 done: ::std::default::Default::default(),
957 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
958 }
959 }
960}
961
962impl ::std::fmt::Debug for self::SendSnapshotRequest {
963 fn fmt(&self, formatter: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
964 formatter
965 .debug_struct("SendSnapshotRequest")
966 .field("space", &self.space)
967 .field("part", &self.part)
968 .field("term", &self.term)
969 .field("committed_log_id", &self.committed_log_id)
970 .field("committed_log_term", &self.committed_log_term)
971 .field("leader_addr", &self.leader_addr)
972 .field("leader_port", &self.leader_port)
973 .field("rows", &self.rows)
974 .field("total_size", &self.total_size)
975 .field("total_count", &self.total_count)
976 .field("done", &self.done)
977 .finish()
978 }
979}
980
981unsafe impl ::std::marker::Send for self::SendSnapshotRequest {}
982unsafe impl ::std::marker::Sync for self::SendSnapshotRequest {}
983
984impl ::fbthrift::GetTType for self::SendSnapshotRequest {
985 const TTYPE: ::fbthrift::TType = ::fbthrift::TType::Struct;
986}
987
988impl<P> ::fbthrift::Serialize<P> for self::SendSnapshotRequest
989where
990 P: ::fbthrift::ProtocolWriter,
991{
992 fn write(&self, p: &mut P) {
993 p.write_struct_begin("SendSnapshotRequest");
994 p.write_field_begin("space", ::fbthrift::TType::I32, 1);
995 ::fbthrift::Serialize::write(&self.space, p);
996 p.write_field_end();
997 p.write_field_begin("part", ::fbthrift::TType::I32, 2);
998 ::fbthrift::Serialize::write(&self.part, p);
999 p.write_field_end();
1000 p.write_field_begin("term", ::fbthrift::TType::I64, 3);
1001 ::fbthrift::Serialize::write(&self.term, p);
1002 p.write_field_end();
1003 p.write_field_begin("committed_log_id", ::fbthrift::TType::I64, 4);
1004 ::fbthrift::Serialize::write(&self.committed_log_id, p);
1005 p.write_field_end();
1006 p.write_field_begin("committed_log_term", ::fbthrift::TType::I64, 5);
1007 ::fbthrift::Serialize::write(&self.committed_log_term, p);
1008 p.write_field_end();
1009 p.write_field_begin("leader_addr", ::fbthrift::TType::String, 6);
1010 ::fbthrift::Serialize::write(&self.leader_addr, p);
1011 p.write_field_end();
1012 p.write_field_begin("leader_port", ::fbthrift::TType::I32, 7);
1013 ::fbthrift::Serialize::write(&self.leader_port, p);
1014 p.write_field_end();
1015 p.write_field_begin("rows", ::fbthrift::TType::List, 8);
1016 ::fbthrift::Serialize::write(&self.rows, p);
1017 p.write_field_end();
1018 p.write_field_begin("total_size", ::fbthrift::TType::I64, 9);
1019 ::fbthrift::Serialize::write(&self.total_size, p);
1020 p.write_field_end();
1021 p.write_field_begin("total_count", ::fbthrift::TType::I64, 10);
1022 ::fbthrift::Serialize::write(&self.total_count, p);
1023 p.write_field_end();
1024 p.write_field_begin("done", ::fbthrift::TType::Bool, 11);
1025 ::fbthrift::Serialize::write(&self.done, p);
1026 p.write_field_end();
1027 p.write_field_stop();
1028 p.write_struct_end();
1029 }
1030}
1031
1032impl<P> ::fbthrift::Deserialize<P> for self::SendSnapshotRequest
1033where
1034 P: ::fbthrift::ProtocolReader,
1035{
1036 fn read(p: &mut P) -> ::anyhow::Result<Self> {
1037 static FIELDS: &[::fbthrift::Field] = &[
1038 ::fbthrift::Field::new("committed_log_id", ::fbthrift::TType::I64, 4),
1039 ::fbthrift::Field::new("committed_log_term", ::fbthrift::TType::I64, 5),
1040 ::fbthrift::Field::new("done", ::fbthrift::TType::Bool, 11),
1041 ::fbthrift::Field::new("leader_addr", ::fbthrift::TType::String, 6),
1042 ::fbthrift::Field::new("leader_port", ::fbthrift::TType::I32, 7),
1043 ::fbthrift::Field::new("part", ::fbthrift::TType::I32, 2),
1044 ::fbthrift::Field::new("rows", ::fbthrift::TType::List, 8),
1045 ::fbthrift::Field::new("space", ::fbthrift::TType::I32, 1),
1046 ::fbthrift::Field::new("term", ::fbthrift::TType::I64, 3),
1047 ::fbthrift::Field::new("total_count", ::fbthrift::TType::I64, 10),
1048 ::fbthrift::Field::new("total_size", ::fbthrift::TType::I64, 9),
1049 ];
1050 let mut field_space = ::std::option::Option::None;
1051 let mut field_part = ::std::option::Option::None;
1052 let mut field_term = ::std::option::Option::None;
1053 let mut field_committed_log_id = ::std::option::Option::None;
1054 let mut field_committed_log_term = ::std::option::Option::None;
1055 let mut field_leader_addr = ::std::option::Option::None;
1056 let mut field_leader_port = ::std::option::Option::None;
1057 let mut field_rows = ::std::option::Option::None;
1058 let mut field_total_size = ::std::option::Option::None;
1059 let mut field_total_count = ::std::option::Option::None;
1060 let mut field_done = ::std::option::Option::None;
1061 let _ = p.read_struct_begin(|_| ())?;
1062 loop {
1063 let (_, fty, fid) = p.read_field_begin(|_| (), FIELDS)?;
1064 match (fty, fid as ::std::primitive::i32) {
1065 (::fbthrift::TType::Stop, _) => break,
1066 (::fbthrift::TType::I32, 1) => field_space = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1067 (::fbthrift::TType::I32, 2) => field_part = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1068 (::fbthrift::TType::I64, 3) => field_term = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1069 (::fbthrift::TType::I64, 4) => field_committed_log_id = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1070 (::fbthrift::TType::I64, 5) => field_committed_log_term = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1071 (::fbthrift::TType::String, 6) => field_leader_addr = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1072 (::fbthrift::TType::I32, 7) => field_leader_port = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1073 (::fbthrift::TType::List, 8) => field_rows = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1074 (::fbthrift::TType::I64, 9) => field_total_size = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1075 (::fbthrift::TType::I64, 10) => field_total_count = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1076 (::fbthrift::TType::Bool, 11) => field_done = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1077 (fty, _) => p.skip(fty)?,
1078 }
1079 p.read_field_end()?;
1080 }
1081 p.read_struct_end()?;
1082 ::std::result::Result::Ok(Self {
1083 space: field_space.unwrap_or_default(),
1084 part: field_part.unwrap_or_default(),
1085 term: field_term.unwrap_or_default(),
1086 committed_log_id: field_committed_log_id.unwrap_or_default(),
1087 committed_log_term: field_committed_log_term.unwrap_or_default(),
1088 leader_addr: field_leader_addr.unwrap_or_default(),
1089 leader_port: field_leader_port.unwrap_or_default(),
1090 rows: field_rows.unwrap_or_default(),
1091 total_size: field_total_size.unwrap_or_default(),
1092 total_count: field_total_count.unwrap_or_default(),
1093 done: field_done.unwrap_or_default(),
1094 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
1095 })
1096 }
1097}
1098
1099
1100#[allow(clippy::derivable_impls)]
1101impl ::std::default::Default for self::HeartbeatRequest {
1102 fn default() -> Self {
1103 Self {
1104 space: ::std::default::Default::default(),
1105 part: ::std::default::Default::default(),
1106 current_term: ::std::default::Default::default(),
1107 last_log_id: ::std::default::Default::default(),
1108 committed_log_id: ::std::default::Default::default(),
1109 leader_addr: ::std::default::Default::default(),
1110 leader_port: ::std::default::Default::default(),
1111 last_log_term_sent: ::std::default::Default::default(),
1112 last_log_id_sent: ::std::default::Default::default(),
1113 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
1114 }
1115 }
1116}
1117
1118impl ::std::fmt::Debug for self::HeartbeatRequest {
1119 fn fmt(&self, formatter: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1120 formatter
1121 .debug_struct("HeartbeatRequest")
1122 .field("space", &self.space)
1123 .field("part", &self.part)
1124 .field("current_term", &self.current_term)
1125 .field("last_log_id", &self.last_log_id)
1126 .field("committed_log_id", &self.committed_log_id)
1127 .field("leader_addr", &self.leader_addr)
1128 .field("leader_port", &self.leader_port)
1129 .field("last_log_term_sent", &self.last_log_term_sent)
1130 .field("last_log_id_sent", &self.last_log_id_sent)
1131 .finish()
1132 }
1133}
1134
1135unsafe impl ::std::marker::Send for self::HeartbeatRequest {}
1136unsafe impl ::std::marker::Sync for self::HeartbeatRequest {}
1137
1138impl ::fbthrift::GetTType for self::HeartbeatRequest {
1139 const TTYPE: ::fbthrift::TType = ::fbthrift::TType::Struct;
1140}
1141
1142impl<P> ::fbthrift::Serialize<P> for self::HeartbeatRequest
1143where
1144 P: ::fbthrift::ProtocolWriter,
1145{
1146 fn write(&self, p: &mut P) {
1147 p.write_struct_begin("HeartbeatRequest");
1148 p.write_field_begin("space", ::fbthrift::TType::I32, 1);
1149 ::fbthrift::Serialize::write(&self.space, p);
1150 p.write_field_end();
1151 p.write_field_begin("part", ::fbthrift::TType::I32, 2);
1152 ::fbthrift::Serialize::write(&self.part, p);
1153 p.write_field_end();
1154 p.write_field_begin("current_term", ::fbthrift::TType::I64, 3);
1155 ::fbthrift::Serialize::write(&self.current_term, p);
1156 p.write_field_end();
1157 p.write_field_begin("last_log_id", ::fbthrift::TType::I64, 4);
1158 ::fbthrift::Serialize::write(&self.last_log_id, p);
1159 p.write_field_end();
1160 p.write_field_begin("committed_log_id", ::fbthrift::TType::I64, 5);
1161 ::fbthrift::Serialize::write(&self.committed_log_id, p);
1162 p.write_field_end();
1163 p.write_field_begin("leader_addr", ::fbthrift::TType::String, 6);
1164 ::fbthrift::Serialize::write(&self.leader_addr, p);
1165 p.write_field_end();
1166 p.write_field_begin("leader_port", ::fbthrift::TType::I32, 7);
1167 ::fbthrift::Serialize::write(&self.leader_port, p);
1168 p.write_field_end();
1169 p.write_field_begin("last_log_term_sent", ::fbthrift::TType::I64, 8);
1170 ::fbthrift::Serialize::write(&self.last_log_term_sent, p);
1171 p.write_field_end();
1172 p.write_field_begin("last_log_id_sent", ::fbthrift::TType::I64, 9);
1173 ::fbthrift::Serialize::write(&self.last_log_id_sent, p);
1174 p.write_field_end();
1175 p.write_field_stop();
1176 p.write_struct_end();
1177 }
1178}
1179
1180impl<P> ::fbthrift::Deserialize<P> for self::HeartbeatRequest
1181where
1182 P: ::fbthrift::ProtocolReader,
1183{
1184 fn read(p: &mut P) -> ::anyhow::Result<Self> {
1185 static FIELDS: &[::fbthrift::Field] = &[
1186 ::fbthrift::Field::new("committed_log_id", ::fbthrift::TType::I64, 5),
1187 ::fbthrift::Field::new("current_term", ::fbthrift::TType::I64, 3),
1188 ::fbthrift::Field::new("last_log_id", ::fbthrift::TType::I64, 4),
1189 ::fbthrift::Field::new("last_log_id_sent", ::fbthrift::TType::I64, 9),
1190 ::fbthrift::Field::new("last_log_term_sent", ::fbthrift::TType::I64, 8),
1191 ::fbthrift::Field::new("leader_addr", ::fbthrift::TType::String, 6),
1192 ::fbthrift::Field::new("leader_port", ::fbthrift::TType::I32, 7),
1193 ::fbthrift::Field::new("part", ::fbthrift::TType::I32, 2),
1194 ::fbthrift::Field::new("space", ::fbthrift::TType::I32, 1),
1195 ];
1196 let mut field_space = ::std::option::Option::None;
1197 let mut field_part = ::std::option::Option::None;
1198 let mut field_current_term = ::std::option::Option::None;
1199 let mut field_last_log_id = ::std::option::Option::None;
1200 let mut field_committed_log_id = ::std::option::Option::None;
1201 let mut field_leader_addr = ::std::option::Option::None;
1202 let mut field_leader_port = ::std::option::Option::None;
1203 let mut field_last_log_term_sent = ::std::option::Option::None;
1204 let mut field_last_log_id_sent = ::std::option::Option::None;
1205 let _ = p.read_struct_begin(|_| ())?;
1206 loop {
1207 let (_, fty, fid) = p.read_field_begin(|_| (), FIELDS)?;
1208 match (fty, fid as ::std::primitive::i32) {
1209 (::fbthrift::TType::Stop, _) => break,
1210 (::fbthrift::TType::I32, 1) => field_space = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1211 (::fbthrift::TType::I32, 2) => field_part = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1212 (::fbthrift::TType::I64, 3) => field_current_term = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1213 (::fbthrift::TType::I64, 4) => field_last_log_id = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1214 (::fbthrift::TType::I64, 5) => field_committed_log_id = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1215 (::fbthrift::TType::String, 6) => field_leader_addr = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1216 (::fbthrift::TType::I32, 7) => field_leader_port = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1217 (::fbthrift::TType::I64, 8) => field_last_log_term_sent = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1218 (::fbthrift::TType::I64, 9) => field_last_log_id_sent = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1219 (fty, _) => p.skip(fty)?,
1220 }
1221 p.read_field_end()?;
1222 }
1223 p.read_struct_end()?;
1224 ::std::result::Result::Ok(Self {
1225 space: field_space.unwrap_or_default(),
1226 part: field_part.unwrap_or_default(),
1227 current_term: field_current_term.unwrap_or_default(),
1228 last_log_id: field_last_log_id.unwrap_or_default(),
1229 committed_log_id: field_committed_log_id.unwrap_or_default(),
1230 leader_addr: field_leader_addr.unwrap_or_default(),
1231 leader_port: field_leader_port.unwrap_or_default(),
1232 last_log_term_sent: field_last_log_term_sent.unwrap_or_default(),
1233 last_log_id_sent: field_last_log_id_sent.unwrap_or_default(),
1234 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
1235 })
1236 }
1237}
1238
1239
1240#[allow(clippy::derivable_impls)]
1241impl ::std::default::Default for self::HeartbeatResponse {
1242 fn default() -> Self {
1243 Self {
1244 error_code: ::std::default::Default::default(),
1245 current_term: ::std::default::Default::default(),
1246 leader_addr: ::std::default::Default::default(),
1247 leader_port: ::std::default::Default::default(),
1248 committed_log_id: ::std::default::Default::default(),
1249 last_log_id: ::std::default::Default::default(),
1250 last_log_term: ::std::default::Default::default(),
1251 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
1252 }
1253 }
1254}
1255
1256impl ::std::fmt::Debug for self::HeartbeatResponse {
1257 fn fmt(&self, formatter: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1258 formatter
1259 .debug_struct("HeartbeatResponse")
1260 .field("error_code", &self.error_code)
1261 .field("current_term", &self.current_term)
1262 .field("leader_addr", &self.leader_addr)
1263 .field("leader_port", &self.leader_port)
1264 .field("committed_log_id", &self.committed_log_id)
1265 .field("last_log_id", &self.last_log_id)
1266 .field("last_log_term", &self.last_log_term)
1267 .finish()
1268 }
1269}
1270
1271unsafe impl ::std::marker::Send for self::HeartbeatResponse {}
1272unsafe impl ::std::marker::Sync for self::HeartbeatResponse {}
1273
1274impl ::fbthrift::GetTType for self::HeartbeatResponse {
1275 const TTYPE: ::fbthrift::TType = ::fbthrift::TType::Struct;
1276}
1277
1278impl<P> ::fbthrift::Serialize<P> for self::HeartbeatResponse
1279where
1280 P: ::fbthrift::ProtocolWriter,
1281{
1282 fn write(&self, p: &mut P) {
1283 p.write_struct_begin("HeartbeatResponse");
1284 p.write_field_begin("error_code", ::fbthrift::TType::I32, 1);
1285 ::fbthrift::Serialize::write(&self.error_code, p);
1286 p.write_field_end();
1287 p.write_field_begin("current_term", ::fbthrift::TType::I64, 2);
1288 ::fbthrift::Serialize::write(&self.current_term, p);
1289 p.write_field_end();
1290 p.write_field_begin("leader_addr", ::fbthrift::TType::String, 3);
1291 ::fbthrift::Serialize::write(&self.leader_addr, p);
1292 p.write_field_end();
1293 p.write_field_begin("leader_port", ::fbthrift::TType::I32, 4);
1294 ::fbthrift::Serialize::write(&self.leader_port, p);
1295 p.write_field_end();
1296 p.write_field_begin("committed_log_id", ::fbthrift::TType::I64, 5);
1297 ::fbthrift::Serialize::write(&self.committed_log_id, p);
1298 p.write_field_end();
1299 p.write_field_begin("last_log_id", ::fbthrift::TType::I64, 6);
1300 ::fbthrift::Serialize::write(&self.last_log_id, p);
1301 p.write_field_end();
1302 p.write_field_begin("last_log_term", ::fbthrift::TType::I64, 7);
1303 ::fbthrift::Serialize::write(&self.last_log_term, p);
1304 p.write_field_end();
1305 p.write_field_stop();
1306 p.write_struct_end();
1307 }
1308}
1309
1310impl<P> ::fbthrift::Deserialize<P> for self::HeartbeatResponse
1311where
1312 P: ::fbthrift::ProtocolReader,
1313{
1314 fn read(p: &mut P) -> ::anyhow::Result<Self> {
1315 static FIELDS: &[::fbthrift::Field] = &[
1316 ::fbthrift::Field::new("committed_log_id", ::fbthrift::TType::I64, 5),
1317 ::fbthrift::Field::new("current_term", ::fbthrift::TType::I64, 2),
1318 ::fbthrift::Field::new("error_code", ::fbthrift::TType::I32, 1),
1319 ::fbthrift::Field::new("last_log_id", ::fbthrift::TType::I64, 6),
1320 ::fbthrift::Field::new("last_log_term", ::fbthrift::TType::I64, 7),
1321 ::fbthrift::Field::new("leader_addr", ::fbthrift::TType::String, 3),
1322 ::fbthrift::Field::new("leader_port", ::fbthrift::TType::I32, 4),
1323 ];
1324 let mut field_error_code = ::std::option::Option::None;
1325 let mut field_current_term = ::std::option::Option::None;
1326 let mut field_leader_addr = ::std::option::Option::None;
1327 let mut field_leader_port = ::std::option::Option::None;
1328 let mut field_committed_log_id = ::std::option::Option::None;
1329 let mut field_last_log_id = ::std::option::Option::None;
1330 let mut field_last_log_term = ::std::option::Option::None;
1331 let _ = p.read_struct_begin(|_| ())?;
1332 loop {
1333 let (_, fty, fid) = p.read_field_begin(|_| (), FIELDS)?;
1334 match (fty, fid as ::std::primitive::i32) {
1335 (::fbthrift::TType::Stop, _) => break,
1336 (::fbthrift::TType::I32, 1) => field_error_code = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1337 (::fbthrift::TType::I64, 2) => field_current_term = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1338 (::fbthrift::TType::String, 3) => field_leader_addr = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1339 (::fbthrift::TType::I32, 4) => field_leader_port = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1340 (::fbthrift::TType::I64, 5) => field_committed_log_id = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1341 (::fbthrift::TType::I64, 6) => field_last_log_id = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1342 (::fbthrift::TType::I64, 7) => field_last_log_term = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1343 (fty, _) => p.skip(fty)?,
1344 }
1345 p.read_field_end()?;
1346 }
1347 p.read_struct_end()?;
1348 ::std::result::Result::Ok(Self {
1349 error_code: field_error_code.unwrap_or_default(),
1350 current_term: field_current_term.unwrap_or_default(),
1351 leader_addr: field_leader_addr.unwrap_or_default(),
1352 leader_port: field_leader_port.unwrap_or_default(),
1353 committed_log_id: field_committed_log_id.unwrap_or_default(),
1354 last_log_id: field_last_log_id.unwrap_or_default(),
1355 last_log_term: field_last_log_term.unwrap_or_default(),
1356 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
1357 })
1358 }
1359}
1360
1361
1362#[allow(clippy::derivable_impls)]
1363impl ::std::default::Default for self::SendSnapshotResponse {
1364 fn default() -> Self {
1365 Self {
1366 error_code: ::std::default::Default::default(),
1367 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
1368 }
1369 }
1370}
1371
1372impl ::std::fmt::Debug for self::SendSnapshotResponse {
1373 fn fmt(&self, formatter: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1374 formatter
1375 .debug_struct("SendSnapshotResponse")
1376 .field("error_code", &self.error_code)
1377 .finish()
1378 }
1379}
1380
1381unsafe impl ::std::marker::Send for self::SendSnapshotResponse {}
1382unsafe impl ::std::marker::Sync for self::SendSnapshotResponse {}
1383
1384impl ::fbthrift::GetTType for self::SendSnapshotResponse {
1385 const TTYPE: ::fbthrift::TType = ::fbthrift::TType::Struct;
1386}
1387
1388impl<P> ::fbthrift::Serialize<P> for self::SendSnapshotResponse
1389where
1390 P: ::fbthrift::ProtocolWriter,
1391{
1392 fn write(&self, p: &mut P) {
1393 p.write_struct_begin("SendSnapshotResponse");
1394 p.write_field_begin("error_code", ::fbthrift::TType::I32, 1);
1395 ::fbthrift::Serialize::write(&self.error_code, p);
1396 p.write_field_end();
1397 p.write_field_stop();
1398 p.write_struct_end();
1399 }
1400}
1401
1402impl<P> ::fbthrift::Deserialize<P> for self::SendSnapshotResponse
1403where
1404 P: ::fbthrift::ProtocolReader,
1405{
1406 fn read(p: &mut P) -> ::anyhow::Result<Self> {
1407 static FIELDS: &[::fbthrift::Field] = &[
1408 ::fbthrift::Field::new("error_code", ::fbthrift::TType::I32, 1),
1409 ];
1410 let mut field_error_code = ::std::option::Option::None;
1411 let _ = p.read_struct_begin(|_| ())?;
1412 loop {
1413 let (_, fty, fid) = p.read_field_begin(|_| (), FIELDS)?;
1414 match (fty, fid as ::std::primitive::i32) {
1415 (::fbthrift::TType::Stop, _) => break,
1416 (::fbthrift::TType::I32, 1) => field_error_code = ::std::option::Option::Some(::fbthrift::Deserialize::read(p)?),
1417 (fty, _) => p.skip(fty)?,
1418 }
1419 p.read_field_end()?;
1420 }
1421 p.read_struct_end()?;
1422 ::std::result::Result::Ok(Self {
1423 error_code: field_error_code.unwrap_or_default(),
1424 _dot_dot_Default_default: self::dot_dot::OtherFields(()),
1425 })
1426 }
1427}
1428
1429
1430mod dot_dot {
1431 #[derive(Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
1432 pub struct OtherFields(pub(crate) ());
1433
1434 #[allow(dead_code)] pub(super) fn default_for_serde_deserialize() -> OtherFields {
1436 OtherFields(())
1437 }
1438}