Skip to content

Commit

Permalink
CCBC-989: write bucket capabilities into config cache
Browse files Browse the repository at this point in the history
Change-Id: I4168c50679547c12996aece3747dfe8dd59da141
Reviewed-on: http://review.couchbase.org/100756
Tested-by: Build Bot <build@couchbase.com>
Reviewed-by: Sergey Avseyev <sergey.avseyev@gmail.com>
  • Loading branch information
avsej committed Oct 17, 2018
1 parent af6a072 commit 4b8681d
Showing 1 changed file with 28 additions and 0 deletions.
28 changes: 28 additions & 0 deletions src/vbucket/vbucket.c
Expand Up @@ -944,6 +944,34 @@ lcbvb_save_json(lcbvb_CONFIG *cfg)
cJSON_AddItemToObject(vbroot, "vBucketMap", vbmap);
cJSON_AddItemToObject(root, "vBucketServerMap", vbroot);
}
if (cfg->caps != 0) {
cJSON *jcaps = cJSON_CreateArray();
if (cfg->caps & LCBVB_CAP_XATTR) {
cJSON_AddItemToArray(jcaps, cJSON_CreateString("xattr"));
}
if (cfg->caps & LCBVB_CAP_DCP) {
cJSON_AddItemToArray(jcaps, cJSON_CreateString("dcp"));
}
if (cfg->caps & LCBVB_CAP_CBHELLO) {
cJSON_AddItemToArray(jcaps, cJSON_CreateString("cbhello"));
}
if (cfg->caps & LCBVB_CAP_TOUCH) {
cJSON_AddItemToArray(jcaps, cJSON_CreateString("touch"));
}
if (cfg->caps & LCBVB_CAP_COUCHAPI) {
cJSON_AddItemToArray(jcaps, cJSON_CreateString("couchapi"));
}
if (cfg->caps & LCBVB_CAP_CCCP) {
cJSON_AddItemToArray(jcaps, cJSON_CreateString("cccp"));
}
if (cfg->caps & LCBVB_CAP_XDCR_CHECKPOINTING) {
cJSON_AddItemToArray(jcaps, cJSON_CreateString("xdcrCheckpointing"));
}
if (cfg->caps & LCBVB_CAP_NODES_EXT) {
cJSON_AddItemToArray(jcaps, cJSON_CreateString("nodesExt"));
}
cJSON_AddItemToObject(root, "bucketCapabilities", jcaps);
}

ret = cJSON_PrintUnformatted(root);
cJSON_Delete(root);
Expand Down

0 comments on commit 4b8681d

Please sign in to comment.