Browse Source

Reinstate "Microoptimise ckdbq_process"

This reverts commit f35f54a642.
master
Con Kolivas 9 years ago
parent
commit
344935a932
  1. 11
      src/stratifier.c

11
src/stratifier.c

@ -6779,7 +6779,7 @@ static bool test_and_clear(bool *val, mutex_t *lock)
static void ckdbq_process(ckpool_t *ckp, char *msg)
{
sdata_t *sdata = ckp->sdata;
size_t responselen = 0;
size_t responselen;
char *buf = NULL;
while (!buf) {
@ -6799,16 +6799,15 @@ static void ckdbq_process(ckpool_t *ckp, char *msg)
/* Process any requests from ckdb that are heartbeat responses with
* specific requests. */
if (likely(buf))
responselen = strlen(buf);
if (likely(responselen > 0)) {
if (likely(responselen > 1)) {
char *response = alloca(responselen);
int offset = 0;
memset(response, 0, responselen);
if (sscanf(buf, "%*d.%*d.%c%n", response, &offset) > 0) {
if (likely(sscanf(buf, "%*d.%*d.%c%n", response, &offset) > 0)) {
strcpy(response + 1, buf + offset);
if (safecmp(response, "ok")) {
if (likely(safecmp(response, "ok"))) {
char *cmd;
cmd = response;
@ -6822,8 +6821,8 @@ static void ckdbq_process(ckpool_t *ckp, char *msg)
LOGWARNING("Got ckdb failure response: %s", buf);
} else
LOGWARNING("Got bad ckdb response: %s", buf);
free(buf);
}
free(buf);
}
static int transactions_by_jobid(sdata_t *sdata, const int64_t id)

Loading…
Cancel
Save