int base_test() { int64_t llval; fc_conf_t conf; fc_item_t item, item2; fc_conf_init(&conf); conf.ksem = SEMKEY; conf.kmem = SHMKEY; conf.memsize = SHMSIZE; memset(&item, 0, sizeof(item)); memset(&item2, 0, sizeof(item2)); ASSERT_OK(fc_init(&conf)==0,"[%d:%s]",ERRPAIR); SETKV(item2,"yingyuan",""); ASSERT_FAIL(fc_get(&item2)==0,"[%d:%s]%s:%s",ERRPAIR,ITPAIR(item2)); SETKV(item,"yingyuan","Cheng Yingyuan"); ASSERT_OK(fc_add(&item)==0,"[%d:%s]%s:%s",ERRPAIR,ITPAIR(item)); ASSERT_OK(fc_get(&item2)==0,"[%d:%s]%s:%s",ERRPAIR,ITPAIR(item2)); ASSERT_EQ(item,item2); ASSERT_FAIL(fc_add(&item)==0,"[%d:%s]%s:%s",ERRPAIR,ITPAIR(item)); //SETKV(item2, "yingyuanx", "xxxxxx"); //ASSERT_OK(fc_get(&item2)==0,"[%d:%s]%s:%s",ERRPAIR,ITPAIR(item2)); //ASSERT_EQ(item,item2); //SETKV(item, "yingyuan", "REAL WORLD"); //ASSERT_OK(fc_get(&item2)==0,"[%d:%s]%s:%s",ERRPAIR,ITPAIR(item2)); //ASSERT_EQ(item,item2); //SETKV(item,"yingyuanx","Cheng"); //SETKV(item2,"yingyuanx",""); //ASSERT_OK(fc_get(&item2)==0,"[%d:%s]%s:%s",ERRPAIR,ITPAIR(item2)); //ASSERT_EQ(item,item2); SETKV(item2,"age",""); item2.value = (char *)&llval; item2.vlen = sizeof(llval); llval=1000; ASSERT_OK(llval==2000,"inlegal llval %llu",llval); //SETKV(item2, "yingyuanx",""); /*fc_debug(stdout, 1); fc_dump(stdout);*/ SETKV(item,"yingyuan",""); //ASSERT_FAIL(fc_get(&item)==0,"%s","error test fail"); /*ASSERT_OK(fc_destroy()==0,"%s","base test");*/ printf("PASS!!!\n"); return 0; }
int bench_test() { fc_conf_t conf; fc_item_t item, item2; char key[255]; int64_t deltap, deltag; int i; fc_conf_init(&conf); conf.ksem = SEMKEY; conf.kmem = SHMKEY; conf.memsize = SHMSIZE; memset(&item, 0, sizeof(item)); memset(&item2, 0, sizeof(item2)); ASSERT_OK(fc_init(&conf)==0,"[%d:%s]",ERRPAIR); deltap = 0; for (i = 0; i < BENCHOP; i++) { sprintf(key, "phpcachetest_20090902140050_%d", i); item.key = key; item.klen = strlen(item.key); item.value = key; item.vlen = strlen(item.value); item2.key = key; item2.klen = strlen(item2.key); ASSERT_OK(fc_add(&item)==0,"[%d:%s]%s:%s",ERRPAIR,ITPAIR(item)); ASSERT_OK(fc_get(&item2)==0,"[%d:%s]%s:%s",ERRPAIR,ITPAIR(item2)); ASSERT_EQ(item,item2); deltap++; deltag = 1; item.key = "benchounter"; item.klen = strlen(item.key); item.value = (char*)&deltag; item.vlen = sizeof(deltag); //ASSERT_OK(deltag==deltap,"%ll != %ll", deltap, deltag); } /*ASSERT_OK(fc_destroy()==0,"%s","bench test");*/ printf("PASS!!!\n"); return 0; }
void dbrew_config_function_setsize(Rewriter* r, uint64_t f, int size) { CaptureConfig* cc = cc_get(r); FunctionConfig* fc = fc_get(cc, f); fc->size = size; }
void dbrew_config_function_setname(Rewriter* r, uint64_t f, const char* name) { CaptureConfig* cc = cc_get(r); FunctionConfig* fc = fc_get(cc, f); fc->name = strdup(name); }