[mule-user] Mule dumping files to MULE_HOME/.mule/mail/[mailbox]?

0 views
Skip to first unread message

Nick Bower

unread,
Jul 19, 2007, 9:09:40 PM7/19/07
to us...@mule.codehaus.org
Hi. When relocating a mule 1.4.1 instance, I discovered *thousands* of
files in $MULE_HOME/.mule/mail/[mailbox]. They were copies of emails
from the inbox that an imap connector is drawing from.

Could someone tell me what is responsible for these files, why are they
stored to disk and what ensures the size of this directory doesn't get
out of control (as it did for me)? I cleared them down when relocating,
but they are of course growing again.

I have verified these messages were correctly routed from the mailbox to
a JMS queue and out to a remote RDBMS database because the data is
present in the RDBMS at the other end. Hence I'm assuming they're not
queuing failures or the like.

Thanks, Nick

mule-master.conf:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE mule-configuration PUBLIC "-//MuleSource //DTD
mule-configuration XML V1.0//EN"

"http://mule.mulesource.org/dtds/mule-configuration.dtd">

<!-- This is a blank configuration file for the DataFeeds project -->

<mule-configuration id="master-config" version="1.0">

<description>Configuration for the the "DataFeeds" project</description>

<agents>
<agent name="RMI"
className="org.mule.management.agents.RmiRegistryAgent"/>
<agent name="JmxAgent"
className="org.mule.management.agents.JmxAgent">
<properties>
<property name="connectorServerUrl"
value="service:jmx:rmi:///jndi/rmi://localhost:1099/server"/>
<map name="credentials">
<property name="muleusername" value="mulepassword"/>
<property name="admin" value="secret"/>
</map>
</properties>
</agent>
</agents>

<connector name="IngestExceptions"
className="org.mule.providers.jms.JmsConnector">
<properties>
<property name="specification" value="1.1"/>
<property name="persistentDelivery" value="true"/>
<property name="connectionFactoryJndiName"
value="ConnectionFactory"/>
<property name="jndiInitialFactory"

value="org.apache.activemq.jndi.ActiveMQInitialContextFactory"/>
<property name="clientId" value="IngestExceptions"/>
<map name="connectionFactoryProperties">
<property name="brokerURL"
value="tcp://solitonxclone:61616"/>
</map>
</properties>
</connector>

<connector name="DatafeedPublish"
className="org.mule.providers.jms.JmsConnector">
<properties>
<property name="specification" value="1.1"/>
<property name="persistentDelivery" value="true"/>
<property name="connectionFactoryJndiName"
value="ConnectionFactory"/>
<property name="jndiInitialFactory"

value="org.apache.activemq.jndi.ActiveMQInitialContextFactory"/>
<property name="clientId" value="DatafeedPublish"/>
<map name="connectionFactoryProperties">
<property name="brokerURL"
value="tcp://solitonxclone:61616"/>
</map>
</properties>
</connector>

<connector name="MetoceanIngest"
className="org.mule.providers.file.FileConnector"/>

<transformers>

<transformer name="FileToString"
className="org.mule.providers.file.transformers.FileToString"/>

<!-- For annotating Mantacom data because not included in the
stream -->
<transformer name="SetMantacomProps"
className="org.mule.transformers.simple.MessagePropertiesTransformer">
<properties>
<map name="addProperties">
<property name="instrument" value="Metocean Office"/>
</map>
</properties>
</transformer>

<!-- For annotating NE data because not included in the stream -->
<transformer name="SetNEProps"
className="org.mule.transformers.simple.MessagePropertiesTransformer">
<properties>
<map name="addProperties">
<property name="instrument" value="Northern Endeavour"/>
</map>
</properties>
</transformer>

</transformers>

<interceptor-stack name="default">
<interceptor className="org.mule.interceptors.LoggingInterceptor"/>
<interceptor className="org.mule.interceptors.TimerInterceptor"/>
</interceptor-stack>

<model name="DatafeedPublish">

<!-- Exception handling -->

<exception-strategy
className="org.mule.impl.DefaultComponentExceptionStrategy">
<endpoint address="jms://topic:datafeeds.exceptions"
connector="IngestExceptions"/>
</exception-strategy>

<mule-descriptor name="RecordIngest"

implementation="com.metoceanengineers.datafeeds.components.RecordProcessorUMO">
<inbound-router>

<!-- Metocean Office -->
<endpoint
address="file:///var/local/datafeeds/A0468/Metocean
Office/mule-staging/" transformers="SetMantacomProps FileToString"
synchronous="true" connector="MetoceanIngest"/>

<!-- Northern Endeavour -->
<endpoint
address="imap://xxxx:xxxx@imaphost?mailboxFolder=Other%20Users/nedata"
transformers="SetNEProps" synchronous="true"/>

</inbound-router>

<outbound-router>
<router
className="org.mule.routing.outbound.FilteringOutboundRouter">
<endpoint address="jms://topic:datafeeds.records"
connector="DatafeedPublish"/>
</router>
</outbound-router>

<interceptor name="default"/>

</mule-descriptor>


</model>

</mule-configuration>

mule-archive.conf:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE mule-configuration PUBLIC "-//MuleSource //DTD
mule-configuration XML V1.0//EN"

"http://mule.mulesource.org/dtds/mule-configuration.dtd">

<!-- This is a blank configuration file for the DataFeeds project -->

<mule-configuration id="archive-config" version="1.0">

<description>Archive services for the DataFeeds project</description>

<connector name="ArchiveExceptions"
className="org.mule.providers.jms.JmsConnector">
<properties>
<property name="specification" value="1.1"/>
<property name="persistentDelivery" value="true"/>
<property name="connectionFactoryJndiName"
value="ConnectionFactory"/>
<property name="jndiInitialFactory"

value="org.apache.activemq.jndi.ActiveMQInitialContextFactory"/>
<property name="clientId" value="ArchiveExceptions"/>
<map name="connectionFactoryProperties">
<property name="brokerURL"
value="tcp://solitonxclone:61616"/>
</map>
</properties>
</connector>

<connector name="ArchiveRDBMS"
className="org.mule.providers.jms.JmsConnector">
<properties>
<property name="specification" value="1.1"/>
<property name="durable" value="true"/>
<property name="connectionFactoryJndiName"
value="ConnectionFactory"/>
<property name="jndiInitialFactory"

value="org.apache.activemq.jndi.ActiveMQInitialContextFactory"/>
<property name="clientId" value="ArchiveRDBMS"/>
<map name="connectionFactoryProperties">
<property name="brokerURL"
value="tcp://solitonxclone:61616"/>
</map>
</properties>
</connector>

<interceptor-stack name="default">
<interceptor className="org.mule.interceptors.LoggingInterceptor"/>
<interceptor className="org.mule.interceptors.TimerInterceptor"/>
</interceptor-stack>

<model name="DatafeedArchive">

<exception-strategy
className="org.mule.impl.DefaultComponentExceptionStrategy">
<endpoint address="jms://topic:datafeeds.exceptions"
connector="ArchiveExceptions"/>
</exception-strategy>

<!-- Write to Database -->
<mule-descriptor name="RDBMSArchive"
implementation="com.metoceanengineers.datafeeds.components.GeneralDatabaseDAO">
<inbound-router>
<endpoint address="jms://topic:datafeeds.records"
connector="ArchiveRDBMS"/>
</inbound-router>
<interceptor name="default"/>
<properties>
<property name="configFilename"
value="conf/GeneralImports.xml"/>
</properties>
</mule-descriptor>

</model>

</mule-configuration>


---------------------------------------------------------------------
To unsubscribe from this list please visit:

http://xircles.codehaus.org/manage_email

Andrew Perepelytsya

unread,
Jul 19, 2007, 9:18:23 PM7/19/07
to us...@mule.codehaus.org
Hi Nick,

This is not a bug, it's a feature :) I've clarified the docs on how to disable this feature (it had detailed comments in the source code, but not on the page). Check http://mule.mulesource.org/display/MULE/Imap+Provider

Andrew

Nick Bower

unread,
Jul 19, 2007, 9:34:20 PM7/19/07
to us...@mule.codehaus.org
Ah thanks. Should this not be disabled by default? Why would anyone
want to backup an imap connector when the file and other connectors are
not implicitly backed up in a similar fashion?

Andrew Perepelytsya

unread,
Jul 19, 2007, 11:57:35 PM7/19/07
to us...@mule.codehaus.org

andrew cooke

unread,
Jul 31, 2007, 10:08:27 AM7/31/07
to us...@mule.codehaus.org, nick....@metoceanengineers.com

this is now disabled by default in the trunk and 2.0 branch.

cheers
andrew

Reply all
Reply to author
Forward
0 new messages