[jira] [Created] (NET-505) User specified bufferSize reset to default when FTPClient is disconnected or reinitialized resulting in performance degradation

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Created] (NET-505) User specified bufferSize reset to default when FTPClient is disconnected or reinitialized resulting in performance degradation

Baljit Singh (Jira)
Sean Kelley created NET-505:
-------------------------------

             Summary: User specified bufferSize reset to default when FTPClient is disconnected or reinitialized resulting in performance degradation
                 Key: NET-505
                 URL: https://issues.apache.org/jira/browse/NET-505
             Project: Commons Net
          Issue Type: Bug
          Components: FTP
    Affects Versions: 3.2
            Reporter: Sean Kelley
            Priority: Critical


The __bufferSize member variable is reset in the __initDefaults() method. This method is called from the FTPClient's constructor, _connectAction_, reinitialize, and disconnect. This can happen when the FTPClient is re-used after the remote server closes a session due to a timeout, for example.

If the bufferSize is set by the user via the setBufferSize() method, the value is lost when the buffer size is reset. Since the default buffer size controls the amount read from the input stream and written to the output stream, and is so low by default (1024B as defined by Util.DEFAULT_BUFFER_SIZE) the performance of FTPClient drops dramatically.

The recommendation would be to initialize __bufferSize to zero when it is declared and then remove the assignment in __initDefaults().

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira