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

Reply via email to