changeset 20482:bde406ffe5b2

cassandra: If query fails, include how long the reply took in the error message.
author Timo Sirainen <timo.sirainen@dovecot.fi>
date Fri, 01 Jul 2016 16:31:19 +0300
parents 94736fed1324
children 80e064878fab
files src/lib-sql/driver-cassandra.c
diffstat 1 files changed, 5 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib-sql/driver-cassandra.c	Fri Jul 01 16:30:06 2016 +0300
+++ b/src/lib-sql/driver-cassandra.c	Fri Jul 01 16:31:19 2016 +0300
@@ -717,12 +717,14 @@
 	if (error != CASS_OK) {
 		const char *errmsg;
 		size_t errsize;
+		int msecs;
 
 		cass_future_error_message(future, &errmsg, &errsize);
 		i_free(result->error);
-		result->error = i_strdup_printf("Query '%s' failed: %.*s",
-						result->query,
-						(int)errsize, errmsg);
+
+		msecs = timeval_diff_msecs(&ioloop_timeval, &result->start_time);
+		result->error = i_strdup_printf("Query '%s' failed: %.*s (in %u.%03u secs)",
+			result->query, (int)errsize, errmsg, msecs/1000, msecs%1000);
 		/* unavailable = cassandra server knows that there aren't
 		   enough nodes available.