1

我遇到了一个与此处列出的问题非常相似的问题:

单元测试后如何清理嵌入式 cassandra?

简而言之,我正在启动 Cassandra 来运行一些集成测试,但是当我的测试类运行时它们会失败,因为它们无法删除 Cassandra 生成的 CommitLog 文件。

我正在遵循那里给出的答案中的建议,即在启动时执行清理,但当时仍然无法删除文件(如果我通过代码进行调试,我当时也无法通过命令行或 GUI)。结果是我的第一个测试类通过了,但所有后续测试类都失败了。

更多详细信息:

  • 我的同事在 OSX 上运行,没有这个问题;我在 Windows 7 上。
  • 我已经尝试在 DOS 和 Cygwin 下以及通过 Eclipse 运行测试,在所有情况下都以我的本地用户和管理员身份运行。
  • 我已经使用 Process Explorer 来确认除了单个 Java 进程之外没有任何东西可以处理相关文件。
  • 我已经通过代码调试到 java.io.Win32FileSystem 中的本机调用,它无法删除文件。

我可以做些什么来确保 Cassandra 已关闭和/或删除其 CommitLog 文件?

谢谢!

4

0 回答 0