]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
cassandra: If query fails, include how long the reply took in the error message.
authorTimo Sirainen <timo.sirainen@dovecot.fi>
Fri, 1 Jul 2016 13:31:19 +0000 (16:31 +0300)
committerTimo Sirainen <timo.sirainen@dovecot.fi>
Fri, 1 Jul 2016 14:43:32 +0000 (17:43 +0300)
src/lib-sql/driver-cassandra.c

index 629acbc43483ac2be3ffe0647b72548bdf144af7..e932108de22af9fe78b7811d57a66f3544938bff 100644 (file)
@@ -717,12 +717,14 @@ static void query_callback(CassFuture *future, void *context)
        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.