刚入职,我在索引这个组,需要熟悉下之前的搜索索引模块的代码,以便后续开发。我在新申请的测试机器上编译代码部署索引这个模块就报错了。定位出现问题的地方,代码大致流程是这样子的:12345678910if(conf->use_memlock_for_mmap){// add MAP_LOCKED to lock the bufferattr_hash =(AttrIndexInfo*)mmap(NULL, fsize, PROT_WRITE | PROT_READ, MAP_SHARED | MAP_LOCKED, fd, 0);} else {attr_hash =(AttrIndexInfo*)mmap(NULL, fsize, PROT_WRITE | PROT_READ, MAP_SHARED, fd, 0);}而参数里配置了use_memlock_for_mmap 选项,于是代码就走到第一个mmap逻辑处。使用ulimit -a查看下系统属性:1234567891011121314151617[armsword@search-querybs1~]$ ulimit -acore file size (blocks, -c)4194304data seg size (kbytes, -d) unl
...
继续阅读
(61)