我正在尝试删除类型的映射,但在执行此操作之前,我将检查该类型是否存在,如下面的代码所示:def delete_mapping(self, doc_type):
if self.elasticsearch.indices.exists_type(index='my_index', doc_type=doc_type):
self.elasticsearch.indices.delete_mapping(index='my_index', doc_type=doc_type)
检查类型是否存在的行返回true,即使对于不存在的类型也是如此。所以我在下一行中得到TypeMissingException,同时尝试删除类型的映射。在
当我们在ipython控制台上运行代码时,一切看起来都很好,当代码作为异步任务的一部分运行时,问题就出现了。这种情况不是每次都发生,而是在QA和生产服务器上随机发生。这两个环境是唯一有两个节点用于elasticsearch的环境,我们在其他环境中没有看到问题。在
我正在使用python2.7、elasticsearch py 0.4.4和elasticsearch version 1.0.1,在64位Linux上有两个节点。代码作为一个周期性的芹菜任务运行。在
编辑:为问题添加了更多细节。在