fiber: use uint64_t for fiber IDs
Historically we use uint32_t for fiber IDs. And these IDs were
wrapping in time, especially if instance is running for a long
period. Strictly speaking this is not very convenient because if
some external tool gonna track fibers by their IDs it might get
confused (or miss) by IDs wrapping.
Lets rather switch to wide integers and fixup outputs (such as
snprintf callers, Lua's fid reports and etc). This allows us to
simplify code a bit and forget about IDs wrapping at all.
Same time wrong output specificators resulted in weird informal
lines
| main/-244760339/cartridge.failover.task I> Instance state changed
Thus changing IDs type forced us to review all printouts and fix
formatting to not confuse users.
Closes #5846
Signed-off-by:
Cyrill Gorcunov <gorcunov@gmail.com>
Showing
- changelogs/unreleased/gh-5846-cformat.md 12 additions, 0 deletionschangelogs/unreleased/gh-5846-cformat.md
- changelogs/unreleased/gh-5846-fiber-id.md 4 additions, 0 deletionschangelogs/unreleased/gh-5846-fiber-id.md
- src/lib/core/fiber.c 15 additions, 15 deletionssrc/lib/core/fiber.c
- src/lib/core/fiber.h 4 additions, 4 deletionssrc/lib/core/fiber.h
- src/lib/core/say.c 5 additions, 3 deletionssrc/lib/core/say.c
- src/lua/fiber.c 23 additions, 19 deletionssrc/lua/fiber.c
- src/lua/utils.c 2 additions, 2 deletionssrc/lua/utils.c
Loading
Please register or sign in to comment