Memcached中的HOSTNAME LOOKUP FAILURE

时间:2012-07-15 02:27:16

标签: c filesystems memcached

我一直在使用memcached v1.6和它的默认引擎,这是我一直面临的问题。

有时当我尝试从缓存中获取值时,当我尝试设置一个值时,会收到以下错误消息。

  

HOSTNAME LOOKUP FAILURE

很奇怪它不会每次都发生,我已经尝试设置并从缓存中获取值并且它有效,但有时它没有,并且出现“HOSTNAME LOOKUP FAILURE”。

我想在缓存中设置的是包含文件属性的经典struct stat,我这样做。

rc = memcached_set(memc,key,key_length,value,value_length,(time_t) 0,(uint32_t) 0);

其中,当我调试时,键是"0/.Trash",值是结构化为(char *)的结构

关于为什么会发生这种情况的任何想法?或者这个错误意味着什么,所以我可以自己做出结论?

请注意,当我从缓存中获取值时,有时也会发生这种情况,而不仅仅是在我设置它们时。

非常感谢您的帮助!

此致

编辑:

这就是我连接缓存的方式

memcached_server_st *servers = NULL;
memcached_return rc;
char* ip = configuracion_direccionServidorRC(); // this is a dictionary where i get the ip from, which now for testing, it is "127.0.0.1"
uint16_t port = (uint16_t) configuracion_puertoServidorRC(); // this is a dictionary where i get the port from, which now for testing, is "11211"

servers = memcached_servers_parse(ip);
memc = memcached_create(NULL);
servers = memcached_server_list_append(servers, "Server1", port, &rc);
rc = memcached_server_push(memc, servers);

free(servers);

if (rc == MEMCACHED_SUCCESS)
    logger_info("connected!");
else {
    char c_log_mensaje[100];
    sprintf(c_log_mensaje, "couldn't conect!: %s",
            memcached_strerror(memc, rc));
}

0 个答案:

没有答案