python whoosh在中断时的IndexingError

时间:2013-01-21 21:34:47

标签: python whoosh

在我中断了whoosh提交过程后出现这个奇怪的错误。当我试图承诺现在我正在

  File "/usr/local/lib/python2.7/dist-packages/whoosh/filedb/filewriting.py", line 179, in     _check_state
    raise IndexingError("This writer is closed")
whoosh.writing.IndexingError: This writer is closed

我尝试重新安装lib,更改索引目录但不起作用。那么我怎么能修复嗖的一声?

1 个答案:

答案 0 :(得分:1)

我认为没有必要“修复嗖”(或指数)。

可能只是你的代码打开一个编写器,可能使用它,关闭它然后再次尝试使用封闭的编写器。

总是这样做:

with myindex.writer() as w:
    w.add_document(title=u"First document", content=u"Hello there.")
    w.add_document(title=u"Second document", content=u"This is easy!")

如果你以后需要添加更多文档(在“with”-block之外),以同样的方式打开一个新的作家......

注意:编写器w在离开with-block时会自动关闭,这就是所谓的上下文管理器的工作方式。