static PyObject * Bucket__get_timings(pycbc_Bucket *self) { PyObject *ll = PyList_New(0); lcb_get_timings(self->instance, ll, timings_callback); return ll; }
static void process_file(const char *fname) { char *ptr = NULL; size_t size; cJSON *json, *id; lcb_error_t ret; int error = 0; lcb_store_cmd_t cmd; const lcb_store_cmd_t* const cmds[1] = { &cmd }; if (fname[0] == '.') { if (strcmp(fname, ".dump_stats") == 0) { fprintf(stdout, "Dumping stats:\n"); lcb_get_timings(instance, stdout, timings_callback); fprintf(stdout, "----\n"); remove(fname); } return; } if (loadit(fname, &ptr, &size) == -1) { /* Error message already printed */ return; } if ((json = cJSON_Parse(ptr)) == NULL) { invalid_file(INVALID_JSON, fname); free(ptr); return; } id = cJSON_GetObjectItem(json, "_id"); if (id == NULL || id->type != cJSON_String) { invalid_file(UNKNOWN_JSON, fname); free(ptr); return; } memset(&cmd, 0, sizeof(cmd)); cmd.v.v0.key = id->valuestring; cmd.v.v0.nkey = strlen(id->valuestring); cmd.v.v0.bytes = ptr; cmd.v.v0.nbytes = size; cmd.v.v0.operation = LCB_SET; ret = lcb_store(instance, &error, 1, cmds); if (ret == LCB_SUCCESS) { lcb_wait(instance); } else { error = 1; } free(ptr); if (error) { fprintf(stderr, "Failed to store %s: %s\n", fname, lcb_strerror(instance, ret)); } else { remove(fname); } }