bugfix: 远端测试bug
This commit is contained in:
@@ -9,8 +9,8 @@
|
||||
6. 实现配置文件,把日志级别,端口ip,主从模式,持久化方案。 **完成**。
|
||||
7. 持久化落盘用io_uring,加载配置文件用mmap。 **完成**。
|
||||
8. 主从同步的性能,开启与关闭性能做到5%?。
|
||||
9. 主从同步600w条,出现的coredump。 **完成**。
|
||||
10. 主从同步用ebpf实现。 **BUG FIX**。
|
||||
9. 主从同步600w条,出现的coredump。 **BUG FIX**。
|
||||
10. 主从同步用ebpf实现。 **完成**。
|
||||
11. 内存池测试qps与虚拟内存,物理内存。 **完成**。
|
||||
12. 实现一个内存泄露检测组件。 **完成**。
|
||||
|
||||
@@ -22,7 +22,7 @@ sudo apt install libxml2 libxml2-dev
|
||||
# hiredis client
|
||||
sudo apt install -y libhiredis-dev
|
||||
# bpftrace
|
||||
sudo apt install -y bpftrace
|
||||
sudo apt install -y bpftrace libelf libelf-dev clang
|
||||
|
||||
git clone git@gitlab.0voice.com:lianyiheng/9.1-kvstore.git
|
||||
cd 9.1-kvstore/
|
||||
|
||||
@@ -413,10 +413,9 @@ int config_load(const char *filename, AppConfig *out_cfg)
|
||||
|
||||
/*
|
||||
* 用 xmlReadMemory 从内存解析。
|
||||
* - "UTF-8":你原来指定了 UTF-8;如果希望自动探测,可以传 NULL。
|
||||
* - "UTF-8":指定了 UTF-8;如果希望自动探测,可以传 NULL。
|
||||
* - XML_PARSE_NONET:禁用网络访问(防 XXE/外部实体拉取)
|
||||
* - XML_PARSE_NOBLANKS:保持你原来的行为
|
||||
* 你也可以加 XML_PARSE_NOERROR | XML_PARSE_NOWARNING 减少噪音,但调试阶段不建议。
|
||||
*/
|
||||
int parse_opts = XML_PARSE_NOBLANKS | XML_PARSE_NONET;
|
||||
|
||||
|
||||
@@ -224,8 +224,7 @@ static void* reader_thread_func(void *arg)
|
||||
|
||||
// 序列号检查
|
||||
if (h.seq != local_seq) {
|
||||
DEBUGLOG("Reader: seq mismatch! h.seq=%lu, local_seq=%lu, off=%u\n",
|
||||
h.seq, local_seq, read_off);
|
||||
// DEBUGLOG("Reader: seq mismatch! h.seq=%lu, local_seq=%lu, off=%u\n", h.seq, local_seq, read_off);
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
@@ -556,7 +556,6 @@ int resp_dispatch(const resp_cmd_t *cmd, resp_value_t *out_value) {
|
||||
return 0;
|
||||
case KVS_CMD_MEM_PRINT:{
|
||||
int ret = kvs_mem_printf();
|
||||
printf("ret %d\n", ret);
|
||||
*out_value = resp_int(ret);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -57,7 +57,7 @@ int kvs_protocol(struct conn* conn){
|
||||
int consumed = 0;
|
||||
int out_len = 0;
|
||||
|
||||
while(consumed < request_length ){
|
||||
while(consumed < request_length ){
|
||||
const uint8_t *p = request+consumed;
|
||||
int remain = request_length - consumed;
|
||||
|
||||
|
||||
@@ -320,8 +320,10 @@ int mp_print(mp_pool_t *pool){
|
||||
printf("------\n");
|
||||
for(int i = 0; i < MEMPOOL_NUM_CLASSES; i++){
|
||||
mp_bucket_t *bucket = &pool->buckets[i];
|
||||
if(bucket->page_count) ret += bucket->page_count;
|
||||
printf("size:%ld, page:%d, empty:%d\n", bucket->block_size, bucket->page_count, bucket->empty_count);
|
||||
if(bucket->page_count) {
|
||||
ret += bucket->page_count;
|
||||
printf("size:%ld, page:%d, empty:%d\n", bucket->block_size, bucket->page_count, bucket->empty_count);
|
||||
}
|
||||
}
|
||||
printf("------\n");
|
||||
|
||||
|
||||
@@ -274,7 +274,9 @@ int main(int argc, char **argv) {
|
||||
redisContext *c = redisConnect(host, port);
|
||||
if (!c || c->err) die(c, "connect failed");
|
||||
|
||||
printf("Connected to %s:%d\n", host, port);
|
||||
redisReply *reply = redisCommand(c, "MEMPRINT");
|
||||
|
||||
printf("Connected to %s:%d, %lld\n", host, port, reply->integer);
|
||||
|
||||
if(mode == 0){
|
||||
save(c);
|
||||
|
||||
Reference in New Issue
Block a user