activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dejan Bosanac (JIRA)" <j...@apache.org>
Subject [jira] Resolved: (AMQ-1380) ActiveIO does not close ControlFile
Date Fri, 24 Jul 2009 08:34:34 GMT

     [ https://issues.apache.org/activemq/browse/AMQ-1380?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Dejan Bosanac resolved AMQ-1380.
--------------------------------

    Resolution: Fixed

ActiveIO 3.1.2 has just been released with this patch included. It will be included by default
in 5.3.0. For earlier versions, download the jar from https://repository.apache.org/content/repositories/releases/org/apache/activemq/activeio-core/3.1.2/
and put it in lib/optional folder.

> ActiveIO does not close ControlFile 
> ------------------------------------
>
>                 Key: AMQ-1380
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1380
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 4.1.1
>         Environment: All
>            Reporter: Joe Kutner
>            Assignee: Dejan Bosanac
>             Fix For: 5.3.0
>
>         Attachments: patch.txt
>
>
> The following exception is thrown from an ActiveMQ instance that is in Slave mode that
causes it to crash.
> java.io.FileNotFoundException: ***/*******/*****/*******/journal/control.dat (Too many
open files)
>         at java.io.RandomAccessFile.open(Native Method)
>         at java.io.RandomAccessFile.<init>(RandomAccessFile.java:212)
>         at org.apache.activeio.journal.active.ControlFile.<init>(ControlFile.java:60)
>         at org.apache.activeio.journal.active.LogFileManager.initialize(LogFileManager.java:119)
>         at org.apache.activeio.journal.active.LogFileManager.<init>(LogFileManager.java:102)
>         at org.apache.activeio.journal.active.JournalImpl.<init>(JournalImpl.java:101)
>         at org.apache.activemq.store.DefaultPersistenceAdapterFactory.createJournal(DefaultPersistenceAdapterFactory.java:224)
>         at org.apache.activemq.store.DefaultPersistenceAdapterFactory.getJournal(DefaultPersistenceAdapterFactory.java:132)
>         at org.apache.activemq.store.DefaultPersistenceAdapterFactory.createPersistenceAdapter(DefaultPersistenceAdapterFactory.java:70)
>         at org.apache.activemq.store.PersistenceAdapterFactoryBean.getObject(PersistenceAdapterFactoryBean.java:35)
>         at org.springframework.beans.factory.support.AbstractBeanFactory.getObjectFromFactoryBean(AbstractBeanFactory.java:994)
>         ... 41 more
> The problem is that each time ActiveIO checks to see if control.dat is locked it creates
a new java.io.RandomAccessFile.  If the control.dat file is locked, it fails to close the
RandomAccessFile.
> This exception always will be thrown from an instance in Shared-File-System Slave mode
that continues to check the Journal file (which the Master has locked).  But the rate at which
is is thrown depends on the maximum number of files the OS allows to be open.  You can check
how many files are open with 'ulimit -a'

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message