[Tarantool-patches] [PATCH 10/11] relay: use verbose names for fibers
Cyrill Gorcunov
gorcunov at gmail.com
Thu Nov 12 22:51:20 MSK 2020
Usually we use _f postfix for fiber's loop functions
and using same postfix for the fiber instance itself
looks inconsistent.
Same time if we grep for "struct fibers" we see a number
of places where fiber instances are postfixed with _fiber.
Thus lets make the same in relay fiber code:
- use explicit reader_fiber name for a reader
- use relay_fiber name for the joint relay fiber
which depends on the reader, moreover this explicit
name allows to note that the reader cancels the bound
fiber if error happens.
Signed-off-by: Cyrill Gorcunov <gorcunov at gmail.com>
---
src/box/relay.cc | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/src/box/relay.cc b/src/box/relay.cc
index fa3dc3a75..a9522d30c 100644
--- a/src/box/relay.cc
+++ b/src/box/relay.cc
@@ -539,7 +539,7 @@ int
relay_reader_f(va_list ap)
{
struct relay *relay = va_arg(ap, struct relay *);
- struct fiber *relay_f = va_arg(ap, struct fiber *);
+ struct fiber *relay_fiber = va_arg(ap, struct fiber *);
struct ibuf ibuf;
struct ev_io io;
@@ -557,7 +557,7 @@ relay_reader_f(va_list ap)
}
} catch (Exception *e) {
relay_set_error(relay, e);
- fiber_cancel(relay_f);
+ fiber_cancel(relay_fiber);
}
ibuf_destroy(&ibuf);
return 0;
@@ -688,9 +688,10 @@ relay_subscribe_f(va_list ap)
/* Start fiber for receiving replica acks. */
char name[FIBER_NAME_MAX];
snprintf(name, sizeof(name), "%s:%s", fiber()->name, "reader");
- struct fiber *reader = fiber_new_xc(name, relay_reader_f);
- fiber_set_joinable(reader, true);
- fiber_start(reader, relay, fiber());
+ struct fiber *reader_fiber = fiber_new_xc(name, relay_reader_f);
+ struct fiber *relay_fiber = fiber();
+ fiber_set_joinable(reader_fiber, true);
+ fiber_start(reader_fiber, relay, relay_fiber);
/*
* If the replica happens to be up to date on subscribe,
@@ -771,8 +772,8 @@ relay_subscribe_f(va_list ap)
wal_clear_watcher(&relay->wal_watcher, cbus_process);
/* Join ack reader fiber. */
- fiber_cancel(reader);
- fiber_join(reader);
+ fiber_cancel(reader_fiber);
+ fiber_join(reader_fiber);
/* Destroy cpipe to tx. */
cbus_unpair(&relay->tx_pipe, &relay->relay_pipe,
--
2.26.2
More information about the Tarantool-patches
mailing list