Apache James 2.3.2 отключается после нескольких часов работы - PullRequest
0 голосов
/ 31 января 2012

У меня странная ошибка при установке Apache James 2.3.2.

i Использовал исходный код Джеймса, чтобы изменить поведение сервера электронной почты на пропуск через прокси-сервер электронной почты. Все работает довольно хорошо в течение нескольких часов. После этого Джеймс Сортоф закрывается без видимой причины.

Сначала я получил несколько ошибок в файле phoenix.log:

INFO    2012-01-30 18:49:55.215 [Phoenix.] (): Unknown resource. Bundle: 'org.apache.avalon.phoenix.components.monitor.Resources' Key: 'scanner.skipping-file.notice' Args: '/phoenix/apps/smtp-proxy' Reason: java.util.MissingResourceException: Can't find resource for bundle java.util.PropertyResourceBundle, key scanner.skipping-file.notice

INFO    2012-01-30 18:49:55.232 [Phoenix.] (): Unknown resource. Bundle: 'org.apache.avalon.phoenix.components.monitor.Resources' Key: 'scanner.undeploy.notice' Args: 'smtp-proxy' Reason: java.util.MissingResourceException: Can't find resource for bundle java.util.PropertyResourceBundle, key scanner.undeploy.notice

INFO    2012-01-30 18:49:55.233 [Phoenix.] (): 20 Blocks to process for phase "shutdown". Order of processing = [spoolmanager, matcherpackages, mailetpackages, remotemanager, pop3server, smtpserver, fetchmail, James, dnsserver, nntpserver, nntp-repository, spoolrepository, localusersrepository, users-store, mailstore, connections, sockets, scheduler, database-connections, thread-manager].

**INFO    2012-01-30 18:49:55.562 [Phoenix ] (): Shutting down because there are not any applications running.**

ERROR   2012-01-30 18:50:00.350 [Phoenix.] (): Component named "thread-manager" failed to pass through the Destruction stage. (Reason: java.lang.IllegalThreadStateException).

ERROR   2012-01-30 18:50:00.350 [Phoenix.] (): Component named "thread-manager" failed to pass through the Destruction stage. (Reason: java.lang.IllegalThreadStateException).

ERROR   2012-01-30 18:50:00.350 [Phoenix.] (): There was an error running phase "shutdown" for Block named "thread-manager". (Reason: Component named "thread-manager" failed to pass through the Destruction stage. (Reason: java.lang.IllegalThreadStateException).).

Вскоре после этих ошибок smtp-server.log показывает 2 исключения:

30/01/12 18:42:57 ERROR smtpserver: Exception opening socket: Unable to access thread pool due to java.lang.InterruptedException
java.lang.IllegalStateException: Unable to access thread pool due to java.lang.InterruptedException
    at org.apache.avalon.excalibur.thread.impl.BasicThreadPool.getWorker(BasicThreadPool.java:164)
    at org.apache.excalibur.thread.impl.AbstractThreadPool.execute(AbstractThreadPool.java:131)
    at org.apache.excalibur.thread.impl.AbstractThreadPool.execute(AbstractThreadPool.java:120)
    at org.apache.avalon.excalibur.thread.impl.DefaultThreadPool.execute(DefaultThreadPool.java:115)
    at org.apache.james.util.watchdog.InaccurateTimeoutWatchdog.start(InaccurateTimeoutWatchdog.java:106)
    at proxy.james.smtpserver.SMTPHandler.handleConnection(SMTPHandler.java:374)
    at org.apache.james.util.connection.ServerConnection$ClientConnectionRunner.run(ServerConnection.java:432)
    at org.apache.excalibur.thread.impl.ExecutableRunnable.execute(ExecutableRunnable.java:55)
    at org.apache.excalibur.thread.impl.WorkerThread.run(WorkerThread.java:116)
30/01/12 18:42:57 ERROR smtpserver: Exception opening socket: Unable to access thread pool due to java.lang.InterruptedException
java.lang.IllegalStateException: Unable to access thread pool due to java.lang.InterruptedException
    at org.apache.avalon.excalibur.thread.impl.BasicThreadPool.getWorker(BasicThreadPool.java:164)
    at org.apache.excalibur.thread.impl.AbstractThreadPool.execute(AbstractThreadPool.java:131)
    at org.apache.excalibur.thread.impl.AbstractThreadPool.execute(AbstractThreadPool.java:120)
    at org.apache.avalon.excalibur.thread.impl.DefaultThreadPool.execute(DefaultThreadPool.java:115)
    at org.apache.james.util.watchdog.InaccurateTimeoutWatchdog.start(InaccurateTimeoutWatchdog.java:106)
    at proxy.james.smtpserver.SMTPHandler.handleConnection(SMTPHandler.java:374)
    at org.apache.james.util.connection.ServerConnection$ClientConnectionRunner.run(ServerConnection.java:432)
    at org.apache.excalibur.thread.impl.ExecutableRunnable.execute(ExecutableRunnable.java:55)
    at org.apache.excalibur.thread.impl.WorkerThread.run(WorkerThread.java:116)

Я полагаю, что исключения в smtp-server.log являются своего рода исключениями из-за закрытия контейнера феникса.

Кто-нибудь видел такое поведение, потому что я действительно не могу объяснить, почему часами все работает нормально, и внезапно феникс отключается ...

Заранее спасибо!

1 Ответ

0 голосов
/ 03 сентября 2012

Для людей, страдающих той же проблемой: Проблема заключалась в том, что горячее развертывание было активировано в контейнере феникса.

Каждый раз, когда служба мониторинга касалась sar-архива приложения, оно было повторно развернуто. - К сожалению, сервер не любит все это!

После деактивации горячего развертывания все теперь работает нормально!

...