hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sean Cho (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-11774) listStatus in FTPFileSystem fails with connection reset
Date Tue, 05 Apr 2016 09:06:25 GMT

    [ https://issues.apache.org/jira/browse/HADOOP-11774?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15225933#comment-15225933
] 

Sean Cho commented on HADOOP-11774:
-----------------------------------

Hi, after investigation and tests, we figured out that some configurations in FTPFIleSystem
class in hadoop common project were hard-coded. 
The code is as follows.
      client.setFileTransferMode(FTP.BLOCK_TRANSFER_MODE);
      client.setFileType(FTP.BINARY_FILE_TYPE);
      client.setBufferSize(DEFAULT_BUFFER_SIZE);

According to RFP documentation(https://tools.ietf.org/html/rfc959), there are three transfer
mode for FTP generally.(Stream, Block, Compressed) However, IIS FTP server does not support
BLOCK_TRANSFER_MODE apparently, and it gives a connection reset error when you run a command
after another.

I think it is more reasonable to allow user to configure these. I can commit the change to
this if no one else has already worked on this. 

Any comments?

> listStatus in FTPFileSystem fails with connection reset
> -------------------------------------------------------
>
>                 Key: HADOOP-11774
>                 URL: https://issues.apache.org/jira/browse/HADOOP-11774
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: fs
>    Affects Versions: 2.3.0
>         Environment: Remote FTP located in Windows NT FTP
>            Reporter: Krishnamoorthy Dharmalingam
>
> Following exception trace raised when FTPFileSystem.listStatus() called in Passive/active
mode.
> Caused by: java.net.SocketException: Connection reset
> 	at java.net.SocketInputStream.read(SocketInputStream.java:196)
> 	at java.net.SocketInputStream.read(SocketInputStream.java:122)
> 	at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:283)
> 	at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:325)
> 	at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:177)
> 	at java.io.InputStreamReader.read(InputStreamReader.java:184)
> 	at java.io.BufferedReader.fill(BufferedReader.java:154)
> 	at java.io.BufferedReader.read(BufferedReader.java:175)
> 	at org.apache.commons.net.io.CRLFLineReader.readLine(CRLFLineReader.java:58)
> 	at org.apache.commons.net.ftp.FTP.__getReply(FTP.java:310)
> 	at org.apache.commons.net.ftp.FTP.__getReply(FTP.java:290)
> 	at org.apache.commons.net.ftp.FTP.sendCommand(FTP.java:479)
> 	at org.apache.commons.net.ftp.FTP.sendCommand(FTP.java:552)
> 	at org.apache.commons.net.ftp.FTP.sendCommand(FTP.java:601)
> 	at org.apache.commons.net.ftp.FTP.quit(FTP.java:809)
> 	at org.apache.commons.net.ftp.FTPClient.logout(FTPClient.java:979)
> 	at org.apache.hadoop.fs.ftp.FTPFileSystem.disconnect(FTPFileSystem.java:151)
> 	at org.apache.hadoop.fs.ftp.FTPFileSystem.getFileStatus(FTPFileSystem.java:395)
> 	at org.apache.hadoop.fs.FileSystem.isFile(FileSystem.java:1424)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message