summaryrefslogtreecommitdiff
path: root/src/transport
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2019-02-26 12:26:37 +0100
committerChristian Grothoff <christian@grothoff.org>2019-02-26 12:26:51 +0100
commit345a50d812dd16985c858f2e399b13c3938d744c (patch)
treebf33a69578115ee6c53ca4e9cff45278d1021d95 /src/transport
parent104d94ff02c4ee338d47bc9a51fb41ffb947a351 (diff)
possible fix for transport client state machine issue found in RPS profiler
Diffstat (limited to 'src/transport')
-rw-r--r--src/transport/gnunet-service-transport.c8
-rw-r--r--src/transport/transport_api_core.c5
2 files changed, 8 insertions, 5 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,
GNUNET_MQ_get_length (tc->mq),
MAX_PENDING);
GNUNET_STATISTICS_update (GST_stats,
- gettext_noop
- ("# messages dropped due to slow client"), 1,
+ gettext_noop ("# messages dropped due to slow client"),
+ 1,
GNUNET_NO);
return;
}
@@ -1352,6 +1352,8 @@ GST_clients_broadcast (const struct GNUNET_MessageHeader *msg,
NULL != tc;
tc = tc->next)
{
+ if (CT_NONE == tc->type)
+ continue; /* client not yet ready */
if ( (GNUNET_YES == may_drop) &&
(CT_CORE != tc->type) )
continue; /* skip, this client does not care about payload */
@@ -1383,7 +1385,7 @@ GST_clients_broadcast_peer_notification (const struct GNUNET_PeerIdentity *peer,
{
struct GNUNET_MQ_Envelope *env;
struct PeerIterateResponseMessage *msg;
-
+
msg = compose_address_iterate_response_message (peer,
address);
msg->state = htonl (state);
diff --git a/src/transport/transport_api_core.c b/src/transport/transport_api_core.c
index aa6da0098..e86499173 100644
--- a/src/transport/transport_api_core.c
+++ b/src/transport/transport_api_core.c
@@ -302,8 +302,9 @@ mq_error_handler (void *cls,
{
struct GNUNET_TRANSPORT_CoreHandle *h = cls;
- LOG (GNUNET_ERROR_TYPE_DEBUG,
- "Error receiving from transport service, disconnecting temporarily.\n");
+ LOG (GNUNET_ERROR_TYPE_ERROR,
+ "Error receiving from transport service (%d), disconnecting temporarily.\n",
+ error);
disconnect_and_schedule_reconnect (h);
}