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

Rob Davies updated AMQ-1380:
----------------------------

    Fix Version/s:     (was: 5.1.0)
                   5.3.0

> 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
>             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.

Reply via email to