Any exceptions on the broker side? Is there enough JVM Heap on the broker to accomodate the size of your file?
On Wed, Sep 4, 2013 at 1:42 AM, cristisor <cristisor...@yahoo.com> wrote: > Hello, > > We are using an ActiveMQ 5.5.1.fuse-70-097 broker deployed inside > ServiceMix > 3.6.0-fuse-00-89 to send large files from one endpoint to another. The FTP > upload URL is on the same server where the broker is and there shouldn't be > any kind of problems related to disk space, permissions, etc. The most > annoying thing is that most of the times the upload is successfully, so we > can't find a decent explanation. > > This is the exception: > javax.jms.JMSException: IOException caught while copying. > at > > org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:62) > at > > org.apache.activemq.command.ActiveMQBlobMessage.onSend(ActiveMQBlobMessage.java:177) > at > org.apache.activemq.ActiveMQSession.send(ActiveMQSession.java:1747) > at > > org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:231) > at > > org.apache.activemq.ActiveMQMessageProducerSupport.send(ActiveMQMessageProducerSupport.java:241) > at > > com.rs.sw.nec.necMasterDataImportService.processor.InitialisationRequestsProcessor.sendSnapshotFile(InitialisationRequestsProcessor.java:122) > at > > com.rs.sw.nec.necMasterDataImportService.processor.InitialisationRequestsProcessor.process(InitialisationRequestsProcessor.java:79) > at > > org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncProcessorTypeConverter.java:50) > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:80) > at > > org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98) > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89) > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:80) > at > > org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98) > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89) > at > > org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73) > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:80) > at > > org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98) > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89) > at > > org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:99) > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:80) > at > > org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98) > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89) > at > > org.apache.camel.fabric.FabricTraceProcessor.process(FabricTraceProcessor.java:59) > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:80) > at > > org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:314) > at > > org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:209) > at > org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:274) > at > > org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:111) > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:80) > at > > org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98) > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89) > at > > org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73) > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:80) > at > > org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:61) > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:80) > at > > org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:104) > at > > org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:272) > at > org.apache.camel.processor.SendProcessor.process(SendProcessor.java:98) > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:80) > at > > org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98) > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89) > at > > org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73) > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:80) > at > > org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98) > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89) > at > > org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:99) > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:80) > at > > org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98) > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89) > at > > org.apache.camel.fabric.FabricTraceProcessor.process(FabricTraceProcessor.java:59) > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:80) > at > > org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:314) > at > > org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:209) > at > org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:274) > at > > org.apache.camel.processor.UnitOfWorkProcessor.processAsync(UnitOfWorkProcessor.java:139) > at > > org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:106) > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:80) > at > > org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98) > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89) > at > > org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73) > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:106) > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:85) > at > > org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:93) > at > > org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:560) > at > > org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:498) > at > > org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:467) > at > > org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:325) > at > > org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263) > at > > org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1058) > at > > org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1050) > at > > org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:947) > at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown > Source) > at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown > Source) > at java.lang.Thread.run(Unknown Source) > Caused by: org.apache.commons.net.io.CopyStreamException: IOException > caught > while copying. > at org.apache.commons.net.io.Util.copyStream(Util.java:127) > at > org.apache.commons.net.ftp.FTPClient.__storeFile(FTPClient.java:399) > at > org.apache.commons.net.ftp.FTPClient.storeFile(FTPClient.java:1388) > at > > org.apache.activemq.blob.FTPBlobUploadStrategy.uploadStream(FTPBlobUploadStrategy.java:61) > at > > org.apache.activemq.blob.FTPBlobUploadStrategy.uploadFile(FTPBlobUploadStrategy.java:41) > at > org.apache.activemq.blob.BlobUploader.upload(BlobUploader.java:51) > at > > org.apache.activemq.command.ActiveMQBlobMessage.onSend(ActiveMQBlobMessage.java:174) > ... 72 more > > > After retrieving the IOException from CopyStreamException we found the > following message: Software caused connection abort: socket write error. > First we thought that it's an older, known bug of the commons-net library: > > https://issues.apache.org/jira/browse/NET-207?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel > > We upgraded from commons-net 1.4.1 to commons-net 3.3 but the error > continues to come up on only one test environment. Any ideas? > > > > -- > View this message in context: > http://activemq.2283324.n4.nabble.com/Socket-write-error-when-uploading-BlobMessage-tp4671132.html > Sent from the ActiveMQ - User mailing list archive at Nabble.com. > -- *Christian Posta* http://www.christianposta.com/blog twitter: @christianposta