[ https://issues.apache.org/jira/browse/FTPSERVER-260?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12665178#action_12665178 ]
David Latorre commented on FTPSERVER-260: ----------------------------------------- After checking jakarta-jmeter source code it showed up that JMeter tests failing were due to their misuse of commons-net ftp. Commons javadoc for retrieveFileStream states: To finalize the file transfer you must call completePendingCommand and check its return value to verify success. In case you don't call completePendingCommand any subsequent attempt to retrieve a file will fail - this is why those errors appeared on FTPServer. Please note that the 'equivalent' retrieveFile doesn't need a call to completePendingCommand afterwards. John can you check you are not having the same problem (or a equivalent one) ? > IOException under high load > --------------------------- > > Key: FTPSERVER-260 > URL: https://issues.apache.org/jira/browse/FTPSERVER-260 > Project: FtpServer > Issue Type: Bug > Components: Core > Affects Versions: 1.0.0-M3, 1.0.0-M4 > Environment: Windows XP SP3 > Reporter: John Hearn > Attachments: FTP_LOAD_TEST.jmx > > > Under high load I noticed that strange IOExceptions started appearing in the > server log: > java.io.IOException: Se ha anulado una conexión establecida por el software > en su equipo host. > at sun.nio.ch.SocketDispatcher.read0(Native Method) > at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:25) > at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:233) > at sun.nio.ch.IOUtil.read(IOUtil.java:206) > at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:207) > at > org.apache.mina.transport.socket.nio.NioProcessor.read(NioProcessor.java:175) > at > org.apache.mina.transport.socket.nio.NioProcessor.read(NioProcessor.java:42) > at > org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:561) > at > org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:540) > at > org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:532) > at > org.apache.mina.core.polling.AbstractPollingIoProcessor.access$400(AbstractPollingIoProcessor.java:58) > at > org.apache.mina.core.polling.AbstractPollingIoProcessor$Worker.run(AbstractPollingIoProcessor.java:857) > at > org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51) > 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) > (The message is in spanish because I am in Spain. I believe the exception in > english is "Software caused connection abort" but I may be wrong). > I couldn't find a related bug so as a test I set up a JMeter test rig with a > Thread Group and a basic (passive) FTP Request (user admin, RETR README.txt). > Sure enough when I increase the concurrent threads this error starts > appearing. In fact the error can appear occacionally with a single thread > downloading many files consecutively. > I have tried this with the latest versions of both JMeter and FtpServer and > the error is the same. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.