Bug 3477 - ftp disconnection from client
: ftp disconnection from client
Status: RESOLVED DUPLICATE of bug 3486
: CoG jglobus
ftp
: 1.2
: All All
: P3 blocker
: ---
Assigned To:
:
:
:
:
  Show dependency treegraph
 
Reported: 2005-06-14 10:57 by
Modified: 2005-12-05 16:05 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2005-06-14 10:57:36
C is the most important issue at this time.

BACKGROUND

The new GridFTP server (2.0) is a re-implementation, and does not use
wu-ftpd as it did before. Certain things that came for free because wu
was used, are not available any more. Among these are:
1. Wildcards in list command
2. -d flag in LIST (it allowed for machine parseable output from the
server)

The new implementation and the removal of these features from the new server
results in the following issues:

A) We need to reimplement a feature similar to the -d and test it 
(that is done, but we need to test it better)

B) We need to get a handle of the performance issue we see with the MLSD command
when we operate on an NFS file system. We observe the in the default GT4
configuration we always time out on large directories. We need to check if the
manual in C and Java describe how to deal with this. The perfomance issue is
related to the stat() command that is issued for every file. Also the result is
not returned gradually but in one chunk, so no asynchronous handeling of the
entries can be conducted. In a situation such as a portal the GT4 server will
appear slow to the users.

C) In Jglobus certain commands result in an error
before a data channel is established (such as trying to list a
nonexistent directory, or transfer a nonexistent file). The way this is dealt
with is to simply kill the connection. 
This error has especial implictions as we can think of the following scenario

User A and B share a directory in /sandbox

User A browsers to the directory and lists all files. The directory contents
will be uploaded in a window.

User B deleted now file X in this directory

User A now selects file X (not knowing that it is deleted).

As the file no longer exosts the client loses all its state and the conection by
disconnecting. 

The behaviour should be that an error is thrown but that the connection stays alive.

If this is not change dthis way one user could influence the gridftp session of
a nother user through this side effect.

DEBUG [FTPControlChannel]  - opening control channel to plussed : 5000
DEBUG [Reply]  - read 1st line
DEBUG [Reply]  - 1st line: 220 GridFTP Server plussed.mcs.anl.gov 2.0 (gcc32dbg,
1114447190-1) ready.
DEBUG [FTPControlChannel]  - Control channel received: 220 GridFTP Server
plussed.mcs.anl.gov 2.0 (gcc32dbg, 1114447190-1) ready.
DEBUG [FTPControlChannel]  - Control channel sending: AUTH GSSAPI

DEBUG [Reply]  - read 1st line
DEBUG [Reply]  - 1st line: 334 Using authentication type; ADAT must follow.
DEBUG [FTPControlChannel]  - Control channel received: 334 Using authentication
type; ADAT must follow.
DEBUG [Reply]  - read 1st line
DEBUG [Reply]  - 1st line: 235 GSSAPI Authentication successful.
DEBUG [FTPControlChannel]  - Control channel received: 235 GSSAPI Authentication
successful.
DEBUG [FTPControlChannel]  - Control channel sending: USER :globus-mapping:

DEBUG [Reply]  - read 1st line
DEBUG [Reply]  - 1st line: 331 Password required for :globus-mapping:.
DEBUG [FTPControlChannel]  - Control channel received: 331 Password required for
:globus-mapping:.
DEBUG [FTPControlChannel]  - Control channel sending: PASS dummy

DEBUG [Reply]  - read 1st line
DEBUG [Reply]  - 1st line: 230 User hategan logged in.
DEBUG [FTPControlChannel]  - Control channel received: 230 User hategan logged in.
DEBUG [FTPControlChannel]  - Control channel sending: PASV

DEBUG [Reply]  - read 1st line
DEBUG [Reply]  - 1st line: 227 Entering Passive Mode (140,221,36,13,237,207)
DEBUG [FTPControlChannel]  - Control channel received: 227 Entering Passive Mode
(140,221,36,13,237,207)
DEBUG [GridFTPServerFacade]  - hostport: 140.221.36.13 60879
DEBUG [TransferThreadManager]  - adding new empty socketBox to the socket pool
DEBUG [SocketPool]  - adding a free socket
DEBUG [TransferThreadManager]  - connecting active socket 0; total cached
sockets = 1
DEBUG [TaskThread]  - executing task:
org.globus.ftp.dc.GridFTPActiveConnectTask@af993e
DEBUG [GridFTPActiveConnectTask]  - connecting new socket to: 140.221.36.13 60879
DEBUG [GridFTPClient]  - sessions match
DEBUG [FTPControlChannel]  - Control channel sending: MLSD foo

DEBUG [TransferThreadManager]  - checking out a socket; total cached sockets =
1; free = 1; busy = 0
DEBUG [FTPClient]  - transferRun()
DEBUG [TransferMonitor]  - waiting for 1st reply;  maxWait = 12000, ioDelay = 200
DEBUG [FTPControlChannel]  - checking input stream
DEBUG [FTPControlChannel]  - slept 0
DEBUG [FTPClient]  - wait for both monitor threads to finish
DEBUG [TransferMonitor]  - waiting for 1st reply;  maxWait = 12000, ioDelay = 200
DEBUG [FTPServerFacade$LocalControlChannel]  - waiting for reply in local
control channel
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 0
DEBUG [GridFTPActiveConnectTask]  - authenticating
DEBUG [GridFTPServerFacade]  - Creating secure socket
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 200
DEBUG [TransferMonitor]  - reading first reply
DEBUG [Reply]  - read 1st line
DEBUG [Reply]  - 1st line: 500-Command failed. : System error in stat: No such
file or directory
DEBUG [Reply]  - multiline reply; last line should start with ->500 <-
DEBUG [Reply]  - lenght of line.separator on this OS: 1
DEBUG [Reply]  - read line
DEBUG [Reply]  - line : ->500-A system call failed: No such file or directory<-
DEBUG [Reply]  - read line
DEBUG [Reply]  - line : ->500 End.<-
DEBUG [Reply]  - end reached
DEBUG [FTPControlChannel]  - Control channel received: 500-Command failed. :
System error in stat: No such file or directory
500-A system call failed: No such file or directory
500 End.
DEBUG [TransferMonitor]  - first reply bad: 500-Command failed. : System error
in stat: No such file or directory
500-A system call failed: No such file or directory
500 End.
DEBUG [TransferMonitor]  - category: 5
DEBUG [TransferState]  - intercepted exception:
org.globus.ftp.exception.ServerException
DEBUG [TransferMonitor]  - abort
DEBUG [TransferMonitor]  - thread dying naturally
DEBUG [FTPControlChannel]  - Control channel sending: PASV

DEBUG [Reply]  - read 1st line
DEBUG [TransferMonitor]  - thread dying of InterruptedException.
DEBUG [TransferState]  - intercepted exception: java.lang.InterruptedException
DEBUG [FTPServerFacade$LocalControlChannel]  - writing reply
DEBUG [FTPServerFacade$LocalControlChannel]  - push reply:451 active connection
to server failed
java.net.SocketException: Connection reset
java.net.SocketException: Connection reset
	at java.net.SocketInputStream.read(SocketInputStream.java:168)
	at org.globus.gsi.gssapi.SSLUtil.read(SSLUtil.java:37)
	at
org.globus.gsi.gssapi.net.impl.GSIGssInputStream.readToken(GSIGssInputStream.java:64)
	at
org.globus.gsi.gssapi.net.impl.GSIGssInputStream.readHandshakeToken(GSIGssInputStream.java:54)
	at org.globus.gsi.gssapi.net.impl.GSIGssSocket.readToken(GSIGssSocket.java:60)
	at org.globus.gsi.gssapi.net.GssSocket.authenticateClient(GssSocket.java:110)
	at org.globus.gsi.gssapi.net.GssSocket.startHandshake(GssSocket.java:140)
	at org.globus.gsi.gssapi.net.GssSocket.getOutputStream(GssSocket.java:160)
	at
org.globus.ftp.extended.GridFTPServerFacade.authenticate(GridFTPServerFacade.java:542)
	at
org.globus.ftp.dc.GridFTPActiveConnectTask.execute(GridFTPActiveConnectTask.java:72)
	at org.globus.ftp.dc.TaskThread.run(TaskThread.java:64)
	at java.lang.Thread.run(Thread.java:534)

DEBUG [FTPServerFacade$LocalControlChannel]  - wrote reply
DEBUG [TaskThread]  - finished task:
org.globus.ftp.dc.GridFTPActiveConnectTask@af993e
DEBUG [TaskThread]  - executing task:
org.globus.ftp.dc.ActiveStartTransferTask@da4b71
DEBUG [Reply]  - 1st line: 227 Entering Passive Mode (140,221,36,13,237,208)
DEBUG [FTPControlChannel]  - Control channel received: 227 Entering Passive Mode
(140,221,36,13,237,208)
DEBUG [GridFTPServerFacade]  - hostport: 140.221.36.13 60880
DEBUG [TransferThreadManager]  - adding new empty socketBox to the socket pool
DEBUG [SocketPool]  - adding a free socket
DEBUG [TransferThreadManager]  - connecting active socket 0; total cached
sockets = 1
DEBUG [GridFTPClient]  - sessions match
DEBUG [FTPControlChannel]  - Control channel sending: MLSD

DEBUG [FTPServerFacade$LocalControlChannel]  - writing reply
DEBUG [TransferThreadManager]  - checking out a socket; total cached sockets =
1; free = 1; busy = 0
DEBUG [FTPServerFacade$LocalControlChannel]  - push reply:451 startTransfer() failed
java.lang.IllegalArgumentException: socket is null
java.lang.IllegalArgumentException: socket is null
	at
org.globus.ftp.dc.ActiveStartTransferTask.execute(ActiveStartTransferTask.java:95)
	at org.globus.ftp.dc.TaskThread.run(TaskThread.java:64)
	at java.lang.Thread.run(Thread.java:534)

DEBUG [FTPClient]  - transferRun()
DEBUG [FTPServerFacade$LocalControlChannel]  - wrote reply
DEBUG [TaskThread]  - finished task:
org.globus.ftp.dc.ActiveStartTransferTask@da4b71
DEBUG [TaskThread]  - executing task:
org.globus.ftp.dc.GridFTPActiveConnectTask@2c1e6b
DEBUG [GridFTPActiveConnectTask]  - connecting new socket to: 140.221.36.13 60880
DEBUG [GridFTPActiveConnectTask]  - authenticating
DEBUG [GridFTPServerFacade]  - Creating secure socket
DEBUG [FTPClient]  - wait for both monitor threads to finish
DEBUG [TransferMonitor]  - waiting for 1st reply;  maxWait = 12000, ioDelay = 200
DEBUG [FTPControlChannel]  - checking input stream
DEBUG [FTPControlChannel]  - slept 0
DEBUG [TransferMonitor]  - waiting for 1st reply;  maxWait = 12000, ioDelay = 200
DEBUG [FTPServerFacade$LocalControlChannel]  - waiting for reply in local
control channel
DEBUG [FTPServerFacade$LocalControlChannel]  - local control channel ready
org.globus.ftp.exception.ServerException: Server refused performing the request.
Custom message:  (error code 1) [Nested exception message:  Custom message:
Unexpected reply: 451 active connection to server failed
java.net.SocketException: Connection reset
java.net.SocketException: Connection reset
	at java.net.SocketInputStream.read(SocketInputStream.java:168)
	at org.globus.gsi.gssapi.SSLUtil.read(SSLUtil.java:37)
	at
org.globus.gsi.gssapi.net.impl.GSIGssInputStream.readToken(GSIGssInputStream.java:64)
	at
org.globus.gsi.gssapi.net.impl.GSIGssInputStream.readHandshakeToken(GSIGssInputStream.java:54)
	at org.globus.gsi.gssapi.net.impl.GSIGssSocket.readToken(GSIGssSocket.java:60)
	at org.globus.gsi.gssapi.net.GssSocket.authenticateClient(GssSocket.java:110)
	at org.globus.gsi.gssapi.net.GssSocket.startHandshake(GssSocket.java:140)
	at org.globus.gsi.gssapi.net.GssSocket.getOutputStream(GssSocket.java:160)
	at
org.globus.ftp.extended.GridFTPServerFacade.authenticate(GridFTPServerFacade.java:542)
	at
org.globus.ftp.dc.GridFTPActiveConnectTask.execute(GridFTPActiveConnectTask.java:72)
	at org.globus.ftp.dc.TaskThread.run(TaskThread.java:64)
	at java.lang.Thread.run(Thread.java:534)
].  Nested exception is org.globus.ftp.exception.UnexpectedReplyCodeException: 
Custom message: Unexpected reply: 451 active connection to server failed
java.net.SocketException: Connection reset
java.net.SocketException: Connection reset
	at java.net.SocketInputStream.read(SocketInputStream.java:168)
	at org.globus.gsi.gssapi.SSLUtil.read(SSLUtil.java:37)
	at
org.globus.gsi.gssapi.net.impl.GSIGssInputStream.readToken(GSIGssInputStream.java:64)
	at
org.globus.gsi.gssapi.net.impl.GSIGssInputStream.readHandshakeToken(GSIGssInputStream.java:54)
	at org.globus.gsi.gssapi.net.impl.GSIGssSocket.readToken(GSIGssSocket.java:60)
	at org.globus.gsi.gssapi.net.GssSocket.authenticateClient(GssSocket.java:110)
	at org.globus.gsi.gssapi.net.GssSocket.startHandshake(GssSocket.java:140)
	at org.globus.gsi.gssapi.net.GssSocket.getOutputStream(GssSocket.java:160)
	at
org.globus.ftp.extended.GridFTPServerFacade.authenticate(GridFTPServerFacade.java:542)
	at
org.globus.ftp.dc.GridFTPActiveConnectTask.execute(GridFTPActiveConnectTask.java:72)
	at org.globus.ftp.dc.TaskThread.run(TaskThread.java:64)
	at java.lang.Thread.run(Thread.java:534)

	at org.globus.ftp.vanilla.TransferMonitor.run(TransferMonitor.java:174)
DEBUG [TransferMonitor]  - reading first reply
DEBUG [FTPServerFacade$LocalControlChannel]  - pop reply
DEBUG [TransferMonitor]  - first reply bad: 451 active connection to server failed
java.net.SocketException: Connection reset
java.net.SocketException: Connection reset
	at java.net.SocketInputStream.read(SocketInputStream.java:168)
	at org.globus.gsi.gssapi.SSLUtil.read(SSLUtil.java:37)
	at
org.globus.gsi.gssapi.net.impl.GSIGssInputStream.readToken(GSIGssInputStream.java:64)
	at
org.globus.gsi.gssapi.net.impl.GSIGssInputStream.readHandshakeToken(GSIGssInputStream.java:54)
	at org.globus.gsi.gssapi.net.impl.GSIGssSocket.readToken(GSIGssSocket.java:60)
	at org.globus.gsi.gssapi.net.GssSocket.authenticateClient(GssSocket.java:110)
	at org.globus.gsi.gssapi.net.GssSocket.startHandshake(GssSocket.java:140)
	at org.globus.gsi.gssapi.net.GssSocket.getOutputStream(GssSocket.java:160)
	at
org.globus.ftp.extended.GridFTPServerFacade.authenticate(GridFTPServerFacade.java:542)
	at
org.globus.ftp.dc.GridFTPActiveConnectTask.execute(GridFTPActiveConnectTask.java:72)
	at org.globus.ftp.dc.TaskThread.run(TaskThread.java:64)
	at java.lang.Thread.run(Thread.java:534)

DEBUG [TransferMonitor]  - category: 4
DEBUG [TransferState]  - intercepted exception:
org.globus.ftp.exception.ServerException
Done
DEBUG [TransferMonitor]  - abort
DEBUG [TransferMonitor]  - thread dying of InterruptedException.
DEBUG [TransferState]  - intercepted exception: java.lang.InterruptedException
DEBUG [TransferMonitor]  - thread dying naturally


------------------------------------------------------------------------

cl.setPassiveMode(true);
try{cl.mlsd("foo");}catch(Exception e) {}
cl.setPassiveMode(true);
cl.mlsd();


------------------------------------------------------------------------

[21998] Sat Jun 11 19:35:01 2005 :: Server started in daemon mode.
[21998] Sat Jun 11 19:35:09 2005 :: New connection from:
vpnclient18121.mcs.anl.gov:35545
[21998] Sat Jun 11 19:35:14 2005 :: vpnclient18121.mcs.anl.gov:35545: [CLIENT]:
USER :globus-mapping:
[21998] Sat Jun 11 19:35:14 2005 :: vpnclient18121.mcs.anl.gov:35545: [SERVER]:
331 Password required for :globus-mapping:.
[21998] Sat Jun 11 19:35:14 2005 :: vpnclient18121.mcs.anl.gov:35545: [CLIENT]:
PASS dummy
[21998] Sat Jun 11 19:35:14 2005 :: User hategan successfully authorized
[21998] Sat Jun 11 19:35:14 2005 :: vpnclient18121.mcs.anl.gov:35545: [CLIENT]:
PASS dummy
[21998] Sat Jun 11 19:35:14 2005 :: vpnclient18121.mcs.anl.gov:35545: [SERVER]:
230 User hategan logged in.
[21998] Sat Jun 11 19:35:15 2005 :: vpnclient18121.mcs.anl.gov:35545: [CLIENT]: PASV
[21998] Sat Jun 11 19:35:15 2005 :: vpnclient18121.mcs.anl.gov:35545: [SERVER]:
227 Entering Passive Mode (140,221,36,13,237,207)
[21998] Sat Jun 11 19:35:15 2005 :: vpnclient18121.mcs.anl.gov:35545: [CLIENT]:
MLSD foo
[21998] Sat Jun 11 19:35:15 2005 :: Finished transferring "/home/hategan/foo".
[21998] Sat Jun 11 19:35:15 2005 :: vpnclient18121.mcs.anl.gov:35545: [SERVER]:
500-Command failed. : System error in stat: No such file or directory
500-A system call failed: No such file or directory
500 End.
[21998] Sat Jun 11 19:35:15 2005 :: vpnclient18121.mcs.anl.gov:35545: [CLIENT]: PASV
[21998] Sat Jun 11 19:35:15 2005 :: vpnclient18121.mcs.anl.gov:35545: [SERVER]:
227 Entering Passive Mode (140,221,36,13,237,208)
[21998] Sat Jun 11 19:35:15 2005 :: vpnclient18121.mcs.anl.gov:35545: [CLIENT]: MLSD
[21998] Sat Jun 11 19:35:16 2005 :: Requesting abort...
[21998] Sat Jun 11 19:35:16 2005 :: Starting to transfer "/home/hategan".
[21998] Sat Jun 11 19:35:16 2005 :: Finished transferring "/home/hategan".
[21998] Sat Jun 11 19:35:16 2005 :: vpnclient18121.mcs.anl.gov:35545: [SERVER]:
421 Server terminated
[21998] Sat Jun 11 19:35:16 2005 :: Closed connection from
vpnclient18121.mcs.anl.gov:35545
[21998] Sat Jun 11 19:38:48 2005 :: Server is shutting down...


------------------------------------------------------------------------

DEBUG [FTPControlChannel]  - opening control channel to plussed : 5000
DEBUG [Reply]  - read 1st line
DEBUG [Reply]  - 1st line: 220 GridFTP Server plussed.mcs.anl.gov 2.0 (gcc32dbg,
1114447190-1) ready.
DEBUG [FTPControlChannel]  - Control channel received: 220 GridFTP Server
plussed.mcs.anl.gov 2.0 (gcc32dbg, 1114447190-1) ready.
DEBUG [FTPControlChannel]  - Control channel sending: AUTH GSSAPI

DEBUG [Reply]  - read 1st line
DEBUG [Reply]  - 1st line: 334 Using authentication type; ADAT must follow.
DEBUG [FTPControlChannel]  - Control channel received: 334 Using authentication
type; ADAT must follow.
DEBUG [Reply]  - read 1st line
DEBUG [Reply]  - 1st line: 235 GSSAPI Authentication successful.
DEBUG [FTPControlChannel]  - Control channel received: 235 GSSAPI Authentication
successful.
DEBUG [FTPControlChannel]  - Control channel sending: USER :globus-mapping:

DEBUG [Reply]  - read 1st line
DEBUG [Reply]  - 1st line: 331 Password required for :globus-mapping:.
DEBUG [FTPControlChannel]  - Control channel received: 331 Password required for
:globus-mapping:.
DEBUG [FTPControlChannel]  - Control channel sending: PASS dummy

DEBUG [Reply]  - read 1st line
DEBUG [Reply]  - 1st line: 230 User hategan logged in.
DEBUG [FTPControlChannel]  - Control channel received: 230 User hategan logged in.
DEBUG [FTPServerFacade]  - started passive server at port 50000
DEBUG [FTPControlChannel]  - Control channel sending: PORT 140,221,18,121,195,80

DEBUG [Reply]  - read 1st line
DEBUG [Reply]  - 1st line: 200 PORT Command successful.
DEBUG [FTPControlChannel]  - Control channel received: 200 PORT Command successful.
DEBUG [GridFTPClient]  - sessions match
DEBUG [FTPControlChannel]  - Control channel sending: MLSD foo

DEBUG [FTPClient]  - transferRun()
DEBUG [TaskThread]  - executing task:
org.globus.ftp.dc.GridFTPPassiveConnectTask@1f6226
DEBUG [GridFTPPassiveConnectTask]  - server.accept()
DEBUG [TransferMonitor]  - waiting for 1st reply;  maxWait = 12000, ioDelay = 200
DEBUG [FTPControlChannel]  - checking input stream
DEBUG [FTPControlChannel]  - slept 0
DEBUG [FTPClient]  - wait for both monitor threads to finish
DEBUG [TransferMonitor]  - waiting for 1st reply;  maxWait = 12000, ioDelay = 200
DEBUG [FTPServerFacade$LocalControlChannel]  - waiting for reply in local
control channel
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 0
DEBUG [TransferMonitor]  - reading first reply
DEBUG [Reply]  - read 1st line
DEBUG [Reply]  - 1st line: 500-Command failed. : System error in stat: No such
file or directory
DEBUG [Reply]  - multiline reply; last line should start with ->500 <-
DEBUG [Reply]  - lenght of line.separator on this OS: 1
DEBUG [Reply]  - read line
DEBUG [Reply]  - line : ->500-A system call failed: No such file or directory<-
DEBUG [Reply]  - read line
DEBUG [Reply]  - line : ->500 End.<-
DEBUG [Reply]  - end reached
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 200
DEBUG [FTPControlChannel]  - Control channel received: 500-Command failed. :
System error in stat: No such file or directory
500-A system call failed: No such file or directory
500 End.
DEBUG [TransferMonitor]  - first reply bad: 500-Command failed. : System error
in stat: No such file or directory
500-A system call failed: No such file or directory
500 End.
DEBUG [TransferMonitor]  - category: 5
DEBUG [TransferState]  - intercepted exception:
org.globus.ftp.exception.ServerException
DEBUG [TransferMonitor]  - abort
DEBUG [TransferMonitor]  - thread dying naturally
DEBUG [FTPControlChannel]  - Control channel sending: PASV

DEBUG [Reply]  - read 1st line
DEBUG [TransferMonitor]  - thread dying of InterruptedException.
DEBUG [TransferState]  - intercepted exception: java.lang.InterruptedException
DEBUG [Reply]  - 1st line: 227 Entering Passive Mode (140,221,36,13,238,24)
DEBUG [FTPControlChannel]  - Control channel received: 227 Entering Passive Mode
(140,221,36,13,238,24)
DEBUG [GridFTPServerFacade]  - hostport: 140.221.36.13 60952
DEBUG [TransferThreadManager]  - adding new empty socketBox to the socket pool
DEBUG [SocketPool]  - adding a free socket
DEBUG [TransferThreadManager]  - connecting active socket 0; total cached
sockets = 1
DEBUG [FTPClient]  - sessions match
DEBUG [GridFTPServerFacade]  - starting outgoing transfer without mode E
DEBUG [TransferThreadManager]  - checking out a socket; total cached sockets =
1; free = 1; busy = 0
DEBUG [FTPControlChannel]  - Control channel sending: STOR wiki.css

DEBUG [TransferMonitor]  - waiting for 1st reply;  maxWait = 12000, ioDelay = 200
DEBUG [FTPControlChannel]  - checking input stream
DEBUG [FTPControlChannel]  - slept 0
DEBUG [FTPClient]  - wait for both transfer to start
DEBUG [TransferMonitor]  - waiting for 1st reply;  maxWait = 12000, ioDelay = 200
DEBUG [FTPServerFacade$LocalControlChannel]  - waiting for reply in local
control channel
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 0
DEBUG [FTPControlChannel]  - slept 200
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 200
DEBUG [FTPControlChannel]  - slept 400
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 400
DEBUG [FTPControlChannel]  - slept 600
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 600
DEBUG [FTPControlChannel]  - slept 800
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 800
DEBUG [FTPControlChannel]  - slept 1000
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 1000
DEBUG [FTPControlChannel]  - slept 1200
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 1200
DEBUG [FTPControlChannel]  - slept 1400
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 1400
DEBUG [FTPControlChannel]  - slept 1600
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 1600
DEBUG [FTPControlChannel]  - slept 1800
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 1800
DEBUG [FTPControlChannel]  - slept 2000
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 2000
DEBUG [FTPControlChannel]  - slept 2200
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 2200
DEBUG [FTPControlChannel]  - slept 2400
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 2400
DEBUG [FTPControlChannel]  - slept 2600
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 2600
DEBUG [FTPControlChannel]  - slept 2800
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 2800
DEBUG [FTPControlChannel]  - slept 3000
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 3000
DEBUG [FTPControlChannel]  - slept 3200
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 3200
DEBUG [FTPControlChannel]  - slept 3400
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 3400
DEBUG [FTPControlChannel]  - slept 3600
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 3600
DEBUG [FTPControlChannel]  - slept 3800
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 3800
DEBUG [FTPControlChannel]  - slept 4000
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 4000
DEBUG [FTPControlChannel]  - slept 4200
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 4200
DEBUG [FTPControlChannel]  - slept 4400
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 4400
DEBUG [FTPControlChannel]  - slept 4600
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 4600
DEBUG [FTPControlChannel]  - slept 4800
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 4800
DEBUG [FTPControlChannel]  - slept 5000
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 5000
DEBUG [FTPControlChannel]  - slept 5200
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 5200
DEBUG [FTPControlChannel]  - slept 5400
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 5400
DEBUG [FTPControlChannel]  - slept 5600
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 5600
DEBUG [FTPControlChannel]  - slept 5800
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 5800
DEBUG [FTPControlChannel]  - slept 6000
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 6000
DEBUG [FTPControlChannel]  - slept 6200
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 6200
DEBUG [FTPControlChannel]  - slept 6400
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 6400
DEBUG [FTPControlChannel]  - slept 6600
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 6600
DEBUG [FTPControlChannel]  - slept 6800
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 6800
DEBUG [FTPControlChannel]  - slept 7000
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 7000
DEBUG [FTPControlChannel]  - slept 7200
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 7200
DEBUG [FTPControlChannel]  - slept 7400
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 7400
DEBUG [FTPControlChannel]  - slept 7600
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 7600
DEBUG [FTPControlChannel]  - slept 7800
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 7800
DEBUG [FTPControlChannel]  - slept 8000
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 8000
DEBUG [FTPControlChannel]  - slept 8200
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 8200
DEBUG [FTPControlChannel]  - slept 8400
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 8400
DEBUG [FTPControlChannel]  - slept 8600
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 8600
DEBUG [FTPControlChannel]  - slept 8800
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 8800
DEBUG [FTPControlChannel]  - slept 9000
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 9000
DEBUG [FTPControlChannel]  - slept 9200
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 9200
DEBUG [FTPControlChannel]  - slept 9400
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 9400
DEBUG [FTPControlChannel]  - slept 9600
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 9600
DEBUG [FTPControlChannel]  - slept 9800
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 9800
DEBUG [FTPControlChannel]  - slept 10000
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 10000
DEBUG [FTPControlChannel]  - slept 10200
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 10200
DEBUG [FTPControlChannel]  - slept 10400
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 10400
DEBUG [FTPControlChannel]  - slept 10600
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 10600
DEBUG [FTPControlChannel]  - slept 10800
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 10800
DEBUG [FTPControlChannel]  - slept 11000
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 11000
DEBUG [FTPControlChannel]  - slept 11200
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 11200
DEBUG [FTPControlChannel]  - slept 11400
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 11400
DEBUG [FTPControlChannel]  - slept 11600
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 11600
DEBUG [FTPControlChannel]  - slept 11800
DEBUG [FTPServerFacade$LocalControlChannel]  - slept 11800
DEBUG [FTPControlChannel]  - timeout
DEBUG [TransferMonitor]  - thread dying of timeout
DEBUG [TransferState]  - intercepted exception:
org.globus.ftp.exception.ServerException
DEBUG [TransferMonitor]  - abort
DEBUG [TransferMonitor]  - thread dying of InterruptedException.
DEBUG [TransferState]  - intercepted exception: java.lang.InterruptedException
Done
org.globus.ftp.exception.ServerException: Reply wait timeout. (error code 4)
	at org.globus.ftp.vanilla.FTPControlChannel.waitFor(FTPControlChannel.java:213)
	at org.globus.ftp.vanilla.TransferMonitor.run(TransferMonitor.java:108)


------------------------------------------------------------------------

cl.setPassiveMode(false);
try{cl.mlsd("foo");}catch(Exception e) {}
cl.setPassiveMode(true);
cl.put(new File("/home/mike/wiki.css"), "wiki.css", false);


------------------------------------------------------------------------

[22084] Sat Jun 11 19:52:30 2005 :: Server started in daemon mode.
[22084] Sat Jun 11 19:52:34 2005 :: New connection from:
vpnclient18121.mcs.anl.gov:35569
[22084] Sat Jun 11 19:52:39 2005 :: vpnclient18121.mcs.anl.gov:35569: [CLIENT]:
USER :globus-mapping:
[22084] Sat Jun 11 19:52:39 2005 :: vpnclient18121.mcs.anl.gov:35569: [SERVER]:
331 Password required for :globus-mapping:.
[22084] Sat Jun 11 19:52:39 2005 :: vpnclient18121.mcs.anl.gov:35569: [CLIENT]:
PASS dummy
[22084] Sat Jun 11 19:52:39 2005 :: User hategan successfully authorized
[22084] Sat Jun 11 19:52:39 2005 :: vpnclient18121.mcs.anl.gov:35569: [CLIENT]:
PASS dummy
[22084] Sat Jun 11 19:52:39 2005 :: vpnclient18121.mcs.anl.gov:35569: [SERVER]:
230 User hategan logged in.
[22084] Sat Jun 11 19:52:40 2005 :: vpnclient18121.mcs.anl.gov:35569: [CLIENT]:
PORT 140,221,18,121,195,80
[22084] Sat Jun 11 19:52:40 2005 :: vpnclient18121.mcs.anl.gov:35569: [SERVER]:
200 PORT Command successful.
[22084] Sat Jun 11 19:52:40 2005 :: vpnclient18121.mcs.anl.gov:35569: [CLIENT]:
MLSD foo
[22084] Sat Jun 11 19:52:40 2005 :: Finished transferring "/home/hategan/foo".
[22084] Sat Jun 11 19:52:40 2005 :: vpnclient18121.mcs.anl.gov:35569: [SERVER]:
500-Command failed. : System error in stat: No such file or directory
500-A system call failed: No such file or directory
500 End.
[22084] Sat Jun 11 19:52:40 2005 :: vpnclient18121.mcs.anl.gov:35569: [CLIENT]: PASV
[22084] Sat Jun 11 19:52:40 2005 :: vpnclient18121.mcs.anl.gov:35569: [SERVER]:
227 Entering Passive Mode (140,221,36,13,238,24)
[22084] Sat Jun 11 19:52:41 2005 :: vpnclient18121.mcs.anl.gov:35569: [CLIENT]:
STOR wiki.css
[22084] Sat Jun 11 19:52:53 2005 :: Requesting abort...
[22084] Sat Jun 11 19:52:53 2005 :: Starting to transfer "/home/hategan/wiki.css".
[22084] Sat Jun 11 19:52:53 2005 :: Finished transferring "/home/hategan/wiki.css".
[22084] Sat Jun 11 19:52:53 2005 :: vpnclient18121.mcs.anl.gov:35569: [SERVER]:
421 Server terminated
[22084] Sat Jun 11 19:52:53 2005 :: Closed connection from
vpnclient18121.mcs.anl.gov:35569
[22084] Sat Jun 11 19:53:40 2005 :: Server is shutting down...
------- Comment #1 From 2005-06-14 11:08:44 -------
*** Bug 3478 has been marked as a duplicate of this bug. ***
------- Comment #2 From 2005-06-14 11:09:03 -------
*** Bug 3479 has been marked as a duplicate of this bug. ***
------- Comment #3 From 2005-06-15 12:08:12 -------

*** This bug has been marked as a duplicate of 3486 ***