4

全て。トルクボックス アプリケーション サーバー (JBoss AS7) の使用を開始しようとしていますが、メッセージング サブシステム以外はすべて問題ないようです。最初はトルクボックスのセットアップのエラーだと思っていましたが、スタンドアロンの HornetQ (2.3.0 final) をダウンロードし、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 と直接書き込みを必要とし、暗号化されたファイルは追加のレイヤーを配置するため、ファイルに直接アクセスすることはできません。

必要な場合は、通常の Java NIO ファイルを使用する NIO を使用できます。

必要がない場合は、ジャーナル ディレクトリを暗号化されたファイルから移動する必要があります。

あなたがここで言及したスレッドにも書いています: https://community.jboss.org/message/750503

于 2013-04-30T20:34:38.750 に答える
0

私の場合、Amarok と MySQL の依存関係としてインストールされた libaio1 が原因でした。この 2 つを使用したことがないので、アンインストールしただけで、HornetMQ は正常に起動しました。

于 2016-02-23T10:56:28.277 に答える