Quantcast
Viewing all articles
Browse latest Browse all 1061

WSAECONNABORTED - Uploading large files ~ 4.3 GB

Hello,

Here's what I am trying to achieve - - This is a nightly job to upload a 4.3 GB backup file (FileZilla Server version 0.9.43 beta). Since this is a large file and I need to perform a few tasks once the file is uploaded I am using the LargeFileUpload method. - I see that you recommend using 20 MB chunks - In my case I have to use bigger chunks (currently using 50 MB) in order to limit the number of data connections. At around 120 connections the firewall starts interfering and closes the connection. - This works beautifully on most nights and transfers the 4.3 GB file in less than an hour.

Problem - Once every one/two weeks the transfer/upload runs slow and throws the following error - SocketError: WSAECONNABORTED An established connection was aborted by the software in your host machine. For more information see this Chilkat Blog post: http://www.cknotes.com/?p=91

Here are the final few lines from the log - appendFromMemory(10327ms): uploadFromDataSource(10327ms): pbsz_protp(78ms): simpleCommand(47ms): sendCommand: sendingCommand: PBSZ 0 --sendCommand readCommandResponse(47ms): replyLineQP: 200 PBSZ=3D0 --readCommandResponse --simpleCommand simpleCommand(31ms): sendCommand: sendingCommand: PROT P --sendCommand readCommandResponse(31ms): replyLineQP: 200 Protection level set to P --readCommandResponse --simpleCommand --pbsz_protp setupDataConnection(109ms): setupPassiveDataSocket(109ms): sendCommand: sendingCommand: PASV --sendCommand readCommandResponse(47ms): replyLineQP: 227 Entering Passive Mode (10,22,30,73,58,157) --readCommandResponse dataConnect(62ms): hostname: XX.XXX.XXX.XX port: 15005 socket2Connect(62ms): connect2(62ms): hostname: XX.XXX.XXX.XX port: 15005 ssl: 0 connectSocket(62ms): domainOrIpAddress: XX.XXX.XXX.XX port: 15005 connectTimeoutMs: 30000 connect_ipv6_or_ipv4(62ms): This is an IPV4 numeric address. Domain to IP address resolution not needed. connecting to IPV4 address... ipAddress: XX.XXX.XXX.XX createSocket: Setting SO_SNDBUF size sendBufSize: 262144 Setting SO_RCVBUF size recvBufSize: 4194304 --createSocket connect(62ms): Waiting for the connect to complete... myIP: XX.XX.XX.XX myPort: 52894 socket connect successful. --connect --connect_ipv6_or_ipv4 --connectSocket --connect2 --socket2Connect socketOptions: SO_SNDBUF: 262144 SO_RCVBUF: 4194304 TCP_NODELAY: 0 SO_KEEPALIVE: 0 --socketOptions dataConnectSuccess: 1 --dataConnect --setupPassiveDataSocket --setupDataConnection sendUploadCommand: sendCommand: sendingCommand: APPE Backup.bak --sendCommand --sendUploadCommand Reading intermediate response for upload... readCommandResponse(47ms): replyLineQP: 150 Opening data channel for file upload to server, restarting at offset 1310720000 --readCommandResponse intermediateResponseStatusCode: 150 intermediateReply: 150 Opening data channel for file upload to server, restarting at offset 1310720000 sendUploadFileData(9719ms): UploadData: Elapsed time: 9719 millisec --sendUploadFileData closingDataConnection(31ms): shutdownChannel(31ms): sending close notify... sendCloseNotify: Turning on TCP_NODELAY. --sendCloseNotify reading SSL/TLS close notify... (bForceClose) socket shutdown.. terminateConnection: Cleanly terminated TCP connection. --terminateConnection Clearing TLS client certificates. --shutdownChannel --closingDataConnection Reading final response... readCommandResponse(15ms): replyLineQP: 226 Successfully transferred "" --readCommandResponse FinalReply: Elapsed time: 15 millisec --uploadFromDataSource --appendFromMemory appendFromMemory(216295ms): uploadFromDataSource(216295ms): pbsz_protp(93ms): simpleCommand(46ms): sendCommand: sendingCommand: PBSZ 0 --sendCommand readCommandResponse(46ms): replyLineQP: 200 PBSZ=3D0 --readCommandResponse --simpleCommand simpleCommand(47ms): sendCommand: sendingCommand: PROT P --sendCommand readCommandResponse(47ms): replyLineQP: 200 Protection level set to P --readCommandResponse --simpleCommand --pbsz_protp setupDataConnection(78ms): setupPassiveDataSocket(78ms): sendCommand: sendingCommand: PASV --sendCommand readCommandResponse(47ms): replyLineQP: 227 Entering Passive Mode (10,22,30,73,58,158) --readCommandResponse dataConnect(31ms): hostname: XX.XXX.XXX.XX port: 15006 socket2Connect(31ms): connect2(31ms): hostname: XX.XXX.XXX.XX port: 15006 ssl: 0 connectSocket(31ms): domainOrIpAddress: XX.XXX.XXX.XX port: 15006 connectTimeoutMs: 30000 connect_ipv6_or_ipv4(31ms): This is an IPV4 numeric address. Domain to IP address resolution not needed. connecting to IPV4 address... ipAddress: XX.XXX.XXX.XX createSocket: Setting SO_SNDBUF size sendBufSize: 262144 Setting SO_RCVBUF size recvBufSize: 4194304 --createSocket connect(31ms): Waiting for the connect to complete... myIP: XX.XX.XX.XX myPort: 52895 socket connect successful. --connect --connect_ipv6_or_ipv4 --connectSocket --connect2 --socket2Connect socketOptions: SO_SNDBUF: 262144 SO_RCVBUF: 4194304 TCP_NODELAY: 0 SO_KEEPALIVE: 0 --socketOptions dataConnectSuccess: 1 --dataConnect --setupPassiveDataSocket --setupDataConnection sendUploadCommand: sendCommand: sendingCommand: APPE Backup.bak --sendCommand --sendUploadCommand Reading intermediate response for upload... readCommandResponse(47ms): replyLineQP: 150 Opening data channel for file upload to server, restarting at offset 1363148800 --readCommandResponse intermediateResponseStatusCode: 150 intermediateReply: 150 Opening data channel for file upload to server, restarting at offset 1363148800 sendUploadFileData(155689ms): sendOnSocketFromSource(155689ms): Error sending on socket (1) SocketError: WSAECONNABORTED An established connection was aborted by the software in your host machine. For more information see this Chilkat Blog post: http://www.cknotes.com/?p=91 send_size: 4096 Failed to send TLS message. Failed to send on socket from source. --sendOnSocketFromSource Failed to upload data. UploadData: Elapsed time: 155689 millisec --sendUploadFileData Reading final response... readCommandResponse(60029ms): sockRecv: Socket operation timeout. Failed to read beginning of SSL/TLS record. b: 0 dbSize: 0 nReadNBytes: 0 Failed to receive more TLS applicaton data. nReceived: 0 Failed to read FTP control channel reply. readFtpReply: Socket operation timeout. --readCommandResponse Closing the control connection... shutdownChannel(47ms): sending close notify... sendCloseNotify: Turning on TCP_NODELAY. --sendCloseNotify reading SSL/TLS close notify... (bForceClose) socket shutdown.. terminateConnection: Cleanly terminated TCP connection. --terminateConnection Clearing TLS client certificates. --shutdownChannel FinalReply: Elapsed time: 60076 millisec --uploadFromDataSource --appendFromMemory totalNumBytesSent: 1365573632 totalTime: Elapsed time: 1684671 millisec Failed. --LargeFileUpload

Question - Will reducing the chunk size fix this issue? I need to understand this better so that I can work on resolving the firewall issue (not sure if this is on the client side or server side) with limiting the number of data connections to 120.

Thanks!


Viewing all articles
Browse latest Browse all 1061

Trending Articles