Commit Graph

564 Commits

Author SHA1 Message Date
Pavel Kirienko d623eee54a Raft logic fix: forcing active mode when allocation activity is detected 2015-05-11 13:26:53 +03:00
Pavel Kirienko 5af19f82c3 Raft logic fixes 2015-05-11 13:06:30 +03:00
Pavel Kirienko 731d9f4574 Changed RaftCore API; giving up Leader status if the leader cannot write its log 2015-05-10 23:44:25 +03:00
Pavel Kirienko a6b0a256fb Byte order fix in logging 2015-05-10 20:33:34 +03:00
Pavel Kirienko 526b9371e4 Minor logging fix 2015-05-10 20:24:32 +03:00
Pavel Kirienko f2c393e90d Server test extension 2015-05-10 20:10:13 +03:00
Pavel Kirienko b7a4c9524e Fixed error codes 2015-05-10 20:05:40 +03:00
Pavel Kirienko a309c6d8da Raft allocator adds its own allocation entry to the log 2015-05-10 20:03:17 +03:00
Pavel Kirienko 6e287dc1b2 Fixed naming of trace events 2015-05-10 19:33:16 +03:00
Pavel Kirienko 10b5661da4 Advanced tracing 2015-05-10 19:22:03 +03:00
Pavel Kirienko c49ee1c4d3 Top-level typedef for distributed::Server 2015-05-10 17:56:48 +03:00
Pavel Kirienko 12a81b5bef Server event tracer extracted to the common level 2015-05-10 17:53:16 +03:00
Pavel Kirienko 7477de3bd9 NodeDiscoverer - implemented, integrated, not tested 2015-05-10 17:44:34 +03:00
Pavel Kirienko aae4317beb Improved allocation logic 2015-05-10 14:12:19 +03:00
Pavel Kirienko 67b33a712e Improved logic of allocation request manager 2015-05-09 23:52:51 +03:00
Pavel Kirienko 1a763a824c Better naming 2015-05-09 23:34:30 +03:00
Pavel Kirienko 68c36924e3 Better naming 2015-05-09 23:17:22 +03:00
Pavel Kirienko ab0017f870 Top level header for distributed server 2015-05-09 23:06:58 +03:00
Pavel Kirienko d980b5e655 Typo in UAVCAN_TRACE() 2015-05-09 17:04:14 +03:00
Pavel Kirienko ea3886b048 Refactored tests of node ID allocation server 2015-05-09 16:55:52 +03:00
Pavel Kirienko 2c36e91c54 Fixed calls to UAVCAN_TRACE() 2015-05-09 16:29:31 +03:00
Pavel Kirienko 567d167640 Updated default service timeout 2015-05-09 16:21:50 +03:00
Pavel Kirienko 0f10d85f7e Node ID selection logic extracted into a class 2015-05-09 16:16:43 +03:00
Pavel Kirienko 696d97880d Include guard fix 2015-05-09 16:05:15 +03:00
Pavel Kirienko 18d5cb78aa Refactored node ID allocation server; no changes to the logic 2015-05-09 16:03:22 +03:00
Pavel Kirienko 098c29ce93 Transport stats provider moved to header 2015-05-09 12:39:05 +03:00
Pavel Kirienko 9d20d983b5 Restart request server moved to header 2015-05-09 12:38:12 +03:00
Pavel Kirienko 15fa5ad163 Param server moved to header 2015-05-09 12:37:16 +03:00
Pavel Kirienko 106cb94379 Added a README explaining what's going on 2015-05-09 12:35:18 +03:00
Pavel Kirienko ee85d2d73a Panic broadcaster moved to header 2015-05-09 12:26:22 +03:00
Pavel Kirienko 00ec7186b0 Node status monitor moved to header 2015-05-09 12:24:31 +03:00
Pavel Kirienko 894d951c33 Network compat checker moved to header 2015-05-09 12:21:46 +03:00
Pavel Kirienko 6e19d1c7ad Logger moved to header 2015-05-09 12:17:57 +03:00
Pavel Kirienko fc7e242100 Global time sync slave moved to header 2015-05-09 12:13:49 +03:00
Pavel Kirienko 899fa93201 Global time sync master moved to header 2015-05-09 12:07:37 +03:00
Pavel Kirienko 0ee3a7f311 Data type info provider moved to header 2015-05-09 12:03:30 +03:00
Pavel Kirienko 8ea708b77e Renamed DynamicNodeIDClient 2015-05-09 11:56:17 +03:00
Pavel Kirienko 69c361e259 Proper allocation logic with basic test 2015-05-08 23:12:57 +03:00
Pavel Kirienko aca9fcb12c Very basic implementation of DynamicNodeIDAllocationServer - not all logic is implemented yet, but it can be used for testing already 2015-05-08 21:00:17 +03:00
Pavel Kirienko 952009c284 Allocation request manager (untested) 2015-05-08 20:00:30 +03:00
Pavel Kirienko e48fa77d85 Raft logic fixes & more tests 2015-05-08 18:43:27 +03:00
Pavel Kirienko 1d7e83bd71 Raft log append test 2015-05-08 17:32:22 +03:00
Pavel Kirienko dab32220e0 Improved Raft event tracer - added event code to string conversion 2015-05-08 17:20:02 +03:00
Pavel Kirienko 43f849cc10 Log commit callback - needed by the main allocator class to broadcast allocation responses 2015-05-08 14:57:27 +03:00
Pavel Kirienko a7c09ed714 Raft Leader implementation. RaftCore is now finished. 2015-05-08 14:41:15 +03:00
Pavel Kirienko 6985c72dd3 Follower and candidate logic implemented 2015-05-08 13:30:55 +03:00
Pavel Kirienko 1a640e6763 Properly defined timeouts and max cluster size 2015-05-08 12:29:28 +03:00
Pavel Kirienko a1ee2efea0 All Raft logic finished except time updates 2015-05-07 19:48:05 +03:00
Pavel Kirienko ce752d93bd Raft AE and RV RPC response handlers 2015-05-07 19:11:13 +03:00
Pavel Kirienko 944ac75d93 Raft AE and RV servers 2015-05-07 18:16:26 +03:00