diff options
author | Christian Grothoff <christian@grothoff.org> | 2019-02-26 12:26:37 +0100 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2019-02-26 12:26:51 +0100 |
commit | 345a50d812dd16985c858f2e399b13c3938d744c (patch) | |
tree | bf33a69578115ee6c53ca4e9cff45278d1021d95 /src/transport/gnunet-service-transport.c | |
parent | 104d94ff02c4ee338d47bc9a51fb41ffb947a351 (diff) | |
download | gnunet-345a50d812dd16985c858f2e399b13c3938d744c.tar.gz gnunet-345a50d812dd16985c858f2e399b13c3938d744c.zip |
possible fix for transport client state machine issue found in RPS profiler
Diffstat (limited to 'src/transport/gnunet-service-transport.c')
-rw-r--r-- | src/transport/gnunet-service-transport.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/transport/gnunet-service-transport.c b/src/transport/gnunet-service-transport.c index c621ea686..c5fce94a7 100644 --- a/src/transport/gnunet-service-transport.c +++ b/src/transport/gnunet-service-transport.c | |||
@@ -444,8 +444,8 @@ unicast (struct TransportClient *tc, | |||
444 | GNUNET_MQ_get_length (tc->mq), | 444 | GNUNET_MQ_get_length (tc->mq), |
445 | MAX_PENDING); | 445 | MAX_PENDING); |
446 | GNUNET_STATISTICS_update (GST_stats, | 446 | GNUNET_STATISTICS_update (GST_stats, |
447 | gettext_noop | 447 | gettext_noop ("# messages dropped due to slow client"), |
448 | ("# messages dropped due to slow client"), 1, | 448 | 1, |
449 | GNUNET_NO); | 449 | GNUNET_NO); |
450 | return; | 450 | return; |
451 | } | 451 | } |
@@ -1352,6 +1352,8 @@ GST_clients_broadcast (const struct GNUNET_MessageHeader *msg, | |||
1352 | NULL != tc; | 1352 | NULL != tc; |
1353 | tc = tc->next) | 1353 | tc = tc->next) |
1354 | { | 1354 | { |
1355 | if (CT_NONE == tc->type) | ||
1356 | continue; /* client not yet ready */ | ||
1355 | if ( (GNUNET_YES == may_drop) && | 1357 | if ( (GNUNET_YES == may_drop) && |
1356 | (CT_CORE != tc->type) ) | 1358 | (CT_CORE != tc->type) ) |
1357 | continue; /* skip, this client does not care about payload */ | 1359 | continue; /* skip, this client does not care about payload */ |
@@ -1383,7 +1385,7 @@ GST_clients_broadcast_peer_notification (const struct GNUNET_PeerIdentity *peer, | |||
1383 | { | 1385 | { |
1384 | struct GNUNET_MQ_Envelope *env; | 1386 | struct GNUNET_MQ_Envelope *env; |
1385 | struct PeerIterateResponseMessage *msg; | 1387 | struct PeerIterateResponseMessage *msg; |
1386 | 1388 | ||
1387 | msg = compose_address_iterate_response_message (peer, | 1389 | msg = compose_address_iterate_response_message (peer, |
1388 | address); | 1390 | address); |
1389 | msg->state = htonl (state); | 1391 | msg->state = htonl (state); |