core: allow spurious wakeups in cbus_call
Currently it's possible to wakeup a fiber, which is waiting for `cbus_call` completion, using Tarantool C API. This will cause a misleading `TimedOut` error. This patch reworks `cbus_call` in such a way that it yields until a completion flag is set. Part of #7166 NO_DOC=refactoring NO_CHANGELOG=refactoring
Showing
- src/box/iproto.cc 0 additions, 2 deletionssrc/box/iproto.cc
- src/box/vy_run.c 0 additions, 2 deletionssrc/box/vy_run.c
- src/box/wal.c 0 additions, 14 deletionssrc/box/wal.c
- src/lib/core/cbus.c 8 additions, 8 deletionssrc/lib/core/cbus.c
- src/lib/core/fiber.c 7 additions, 0 deletionssrc/lib/core/fiber.c
- src/lib/core/fiber.h 7 additions, 0 deletionssrc/lib/core/fiber.h
- test/unit/CMakeLists.txt 3 additions, 0 deletionstest/unit/CMakeLists.txt
- test/unit/cbus_call.c 178 additions, 0 deletionstest/unit/cbus_call.c
- test/unit/cbus_call.result 7 additions, 0 deletionstest/unit/cbus_call.result
Loading
Please register or sign in to comment