Have most basic VFS script (see below) that triggers when file written to
'IN' directory.
The file is 140,000K.
Heap set at Maximum for XP 1.5GB in Warpper.conf

I can drop the file in the 'IN' directory 3 times but then on 4th run Out of
Memory.

So java system Memory used is:
Waiting:     35,000K
File 1  :     850,000K
File 2  :    1450,000K
File 3  :    1480,000K  - must have hit max.
File 4  :    Out of Memory

It appears Synapse or VFS accumulates this data and won't give up the old
<text> data <text/>, in the payload. Not sure what is keeping this reference
and how to get around this.
Why does 140 MB file end up consuming 10 times as much memory ?


<definitions xmlns="http://ws.apache.org/ns/synapse";>
  <proxy name="DoStuff" transports="vfs">
    <parameter name="transport.vfs.FileURI">file:///C:/test/in</parameter>
    <parameter name="transport.vfs.ContentType">text/plain</parameter>
    <parameter name="transport.vfs.FileNamePattern">.*\.edi</parameter>
    <parameter name="transport.PollInterval">60</parameter>
    <parameter
name="transport.vfs.MoveAfterProcess">file:///C:/test/original</parameter>
    <parameter
name="transport.vfs.MoveAfterFailure">file:///C:/test/original</parameter>
    <parameter name="transport.vfs.ActionAfterProcess">MOVE</parameter>
    <parameter name="transport.vfs.ActionAfterFailure">MOVE</parameter>
    <target>
      <inSequence>
        <send>
          <endpoint>
            <address uri="vfs:file:///C:/test/out"/>
          </endpoint>
        </send>
      </inSequence>
      <outSequence>
        <drop/>
      </outSequence>
    </target>
  </proxy>
</definitions>



2009-03-05 12:50:18,144 [192.168.0.204-icsws-kh] [WrapperSimpleAppMain] 
INFO ServerManager Ready for processing
2009-03-05 12:51:22,987 [-] [vfs-Worker-1]  INFO TimeoutHandler This engine
will expire all callbacks after : 86400 seconds, irrespective o
ut action, after the specified or optional timeout
Exception in thread "vfs-Worker-4" java.lang.OutOfMemoryError: Java heap
space
        at
java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:99)
        at
java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:518)
        at java.lang.StringBuffer.append(StringBuffer.java:307)
        at java.io.StringWriter.write(StringWriter.java:72)
        at org.apache.commons.io.IOUtils.copyLarge(IOUtils.java:1129)
        at org.apache.commons.io.IOUtils.copy(IOUtils.java:1104)
        at org.apache.commons.io.IOUtils.copy(IOUtils.java:1078)
        at org.apache.commons.io.IOUtils.toString(IOUtils.java:382)
        at
org.apache.synapse.format.PlainTextBuilder.processDocument(PlainTextBuilder.java:68)
        at
org.apache.axis2.transport.TransportUtils.createDocumentElement(TransportUtils.java:164)
        at
org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:112)
        at
org.apache.synapse.transport.vfs.VFSTransportListener.processFile(VFSTransportListener.java:433)
        at
org.apache.synapse.transport.vfs.VFSTransportListener.scanFileOrDirectory(VFSTransportListener.java:241)
        at
org.apache.synapse.transport.vfs.VFSTransportListener.onPoll(VFSTransportListener.java:145)
        at
org.apache.synapse.transport.base.AbstractPollingTransportListener$1$1.run(AbstractPollingTransportListener.java:94)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:595)
Exception in thread "vfs-Worker-5" java.lang.OutOfMemoryError: Java heap
space
        at
java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:99)
        at
java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:518)
        at java.lang.StringBuffer.append(StringBuffer.java:307)
        at java.io.StringWriter.write(StringWriter.java:72)
        at org.apache.commons.io.IOUtils.copyLarge(IOUtils.java:1129)
        at org.apache.commons.io.IOUtils.copy(IOUtils.java:1104)
        at org.apache.commons.io.IOUtils.copy(IOUtils.java:1078)
        at org.apache.commons.io.IOUtils.toString(IOUtils.java:382)
        at
org.apache.synapse.format.PlainTextBuilder.processDocument(PlainTextBuilder.java:68)
        at
org.apache.axis2.transport.TransportUtils.createDocumentElement(TransportUtils.java:164)
        at
org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:112)
        at
org.apache.synapse.transport.vfs.VFSTransportListener.processFile(VFSTransportListener.java:433)
        at
org.apache.synapse.transport.vfs.VFSTransportListener.scanFileOrDirectory(VFSTransportListener.java:241)
        at
org.apache.synapse.transport.vfs.VFSTransportListener.onPoll(VFSTransportListener.java:145)
        at
org.apache.synapse.transport.base.AbstractPollingTransportListener$1$1.run(AbstractPollingTransportListener.java:94)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:595)






-- 
View this message in context: 
http://www.nabble.com/VFS---Synapse-Memory-Leak-tp22344176p22344176.html
Sent from the Synapse - Dev mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to