swim: make incarnation struct
Traditional SWIM describes member version as incarnation - volatile monotonically growing number to refute false gossips. But it is not enough in the real world because of necessity to detect restarts and refute information from previous lifes of an instance. Incarnation is going to be a two-part value with persistent upper part and volatile lower part. This patch does preparations making incarnation struct instead of a number. Volatile part is called 'version. Part of #4280
Showing
- src/lib/swim/swim.c 100 additions, 50 deletionssrc/lib/swim/swim.c
- src/lib/swim/swim.h 6 additions, 1 deletionsrc/lib/swim/swim.h
- src/lib/swim/swim_constants.h 32 additions, 0 deletionssrc/lib/swim/swim_constants.h
- src/lib/swim/swim_proto.c 54 additions, 24 deletionssrc/lib/swim/swim_proto.c
- src/lib/swim/swim_proto.h 42 additions, 27 deletionssrc/lib/swim/swim_proto.h
- src/lua/swim.lua 26 additions, 2 deletionssrc/lua/swim.lua
- test/swim/swim.result 31 additions, 28 deletionstest/swim/swim.result
- test/unit/swim.c 25 additions, 23 deletionstest/unit/swim.c
- test/unit/swim.result 10 additions, 9 deletionstest/unit/swim.result
- test/unit/swim_test_utils.c 15 additions, 11 deletionstest/unit/swim_test_utils.c
- test/unit/swim_test_utils.h 3 additions, 3 deletionstest/unit/swim_test_utils.h
Loading
Please register or sign in to comment