4

全部。我正在尝试开始使用扭矩箱应用服务器(JBoss AS7),一切似乎都很好,除了消息传递子系统。起初我认为这是我的扭矩箱设置错误,但后来我下载了独立的 HornetQ(2.3.0 最终版)并尝试运行 bin/start.sh。发生了同样的错误:

21:29:03,128 WARN  [org.hornetq.core.server] HQ222010: Critical IO Error, shutting down the server. file=AIOSequentialFile:/home/gintaras/Downloads/hornetq-2.3.0.Final/bin/../data/journal/hornetq-data-1.hq.tmp, message=Can't open file: HornetQException[errorType=NATIVE_ERROR_CANT_OPEN_CLOSE_FILE message=Can't open file]
at org.hornetq.core.asyncio.impl.AsynchronousFileImpl.init(Native Method) [hornetq-journal.jar:]
at org.hornetq.core.asyncio.impl.AsynchronousFileImpl.open(AsynchronousFileImpl.java:220) [hornetq-journal.jar:]
at org.hornetq.core.journal.impl.AIOSequentialFile.open(AIOSequentialFile.java:190) [hornetq-journal.jar:]

我还在这里添加了一些更多信息的评论:https : //issues.jboss.org/browse/HORNETQ-818(Gintaras 的最后一篇文章)

有什么想法有什么问题吗?

4

3 回答 3

8

您似乎正在以不支持直接 IO 的配置启动系统。你可以把它切换到NIO。

   <subsystem xmlns="urn:jboss:domain:messaging:1.1">
        <hornetq-server>
            <persistence-enabled>true</persistence-enabled>
            ...
            **<journal-type>NIO</journal-type>**

libAIO 需要直接访问文件,这意味着 DMA 和直接写入,并且加密文件将放置一个额外的层,因此您将无法直接访问文件。

如果需要,可以使用 NIO,它将使用常规的 java NIO 文件。

如果您不需要,则必须将日志目录从加密文件中移开。

我也写过你在这里提到的线程:https ://community.jboss.org/message/750503

于 2013-04-30T20:34:38.750 回答
1

据我所知,只要分区安装为 ext4,磁盘加密就不会成为问题。FWIW,您在该错误报告中添加了很多信息,但没有关于libaio您正在使用的确切版本(这是该案例报告的原始错误问题的根源)。

您应该考虑将此问题提交给 HornetQ 用户论坛,让更多人(具有总部经验)能够与您分享他们的经验。Stackoverflow 适用于简单的客观问题,但对于需要讨论的问题,用户论坛可能是一个更好的去处。

https://community.jboss.org/en/hornetq?view=discussions

于 2013-04-30T11:43:18.367 回答
0

在我的情况下,它是由作为 Amarok 和 MySQL 的依赖项安装的 libaio1 引起的。这两个我都没用过,所以我把它卸载了,HornetMQ 就正常启动了。

于 2016-02-23T10:56:28.277 回答