Large file upload/download always fails
Moderator: SourceGear
Large file upload/download always fails
SoS 4.1, VSS 6.0d
Server on Win2k3. Client on WinXPSP2
While uploading/downloading large file (100MB or so) indicator goes up to 99% and then it displays something like "Error sending data to server" and the download is aborted.
Server on Win2k3. Client on WinXPSP2
While uploading/downloading large file (100MB or so) indicator goes up to 99% and then it displays something like "Error sending data to server" and the download is aborted.
Very large files are sometimes problematic for the VSS Automation Component, which SOS uses to communicate with the database.
Try turning off "use compression for data transfers" in the SOS GUI Cleint ->Tools->Options->General Tab.
Also make sure that your firewall is configured so that it does not close connections during a lengthy operation like this.
Try turning off "use compression for data transfers" in the SOS GUI Cleint ->Tools->Options->General Tab.
Also make sure that your firewall is configured so that it does not close connections during a lengthy operation like this.
Linda Bauer
SourceGear
Technical Support Manager
SourceGear
Technical Support Manager
Thnaks for getting back quickly.
Tried with compression switched off but the problem persists.
Meanwhile tested the same with MS-VCC client. It works without any problem. The same file can be downloded and uploaded.
The firewall is default WinXPSP2 and there is no setting about closing connection on lengthy transfer as you mentioned.
The server is WinServer2003 and there is no firewall enabled on it. The client and server both are on the departmental LAN.
Tried with compression switched off but the problem persists.
Meanwhile tested the same with MS-VCC client. It works without any problem. The same file can be downloded and uploaded.
The firewall is default WinXPSP2 and there is no setting about closing connection on lengthy transfer as you mentioned.
The server is WinServer2003 and there is no firewall enabled on it. The client and server both are on the departmental LAN.
Let's see if there's any useful information in the log file. Enable verbose logging:
http://support.sourcegear.com/viewtopic.php?t=463
Reproduce the failed upload, then send a copy of the log.txt file from the SOS Server directory to linda at SourceGear.com.
http://support.sourcegear.com/viewtopic.php?t=463
Reproduce the failed upload, then send a copy of the log.txt file from the SOS Server directory to linda at SourceGear.com.
Linda Bauer
SourceGear
Technical Support Manager
SourceGear
Technical Support Manager
Hi Linda,
The log file is small enough, so is reproduced here:
<FILE BEGINS>
7/13/2005 10:40:11 AM - ****************************************************
7/13/2005 10:40:11 AM - SourceOffSite Server 4.1 Professional - With Cryptography
7/13/2005 10:40:11 AM - CurrentCulture is en-US.
7/13/2005 10:40:11 AM - Server Information
7/13/2005 10:40:11 AM - Operating System: Microsoft(R) Windows(R) Server 2003, Standard Edition
7/13/2005 10:40:11 AM - Service Pack: 1.0
7/13/2005 10:40:11 AM - OS Version: 5.2.3790
7/13/2005 10:40:11 AM - Locale: Ox0409
7/13/2005 10:40:11 AM - OSLanguage: 1033
7/13/2005 10:40:11 AM - Total Physical Memory: 639.5 MB
7/13/2005 10:40:11 AM -
7/13/2005 10:40:11 AM - SSAPI.dll Information:
7/13/2005 10:40:11 AM - Location: file:///C:/Program Files/SourceOffSite Server/Interop.SourceSafeTypeLib.DLL
7/13/2005 10:40:11 AM - DisplayName: Interop.SourceSafeTypeLib, Version=5.1.0.0, Culture=neutral, PublicKeyToken=null
7/13/2005 10:40:11 AM -
7/13/2005 10:40:11 AM - Started at 7/13/2005 10:40:11 AM
7/13/2005 10:40:11 AM - General logging level is Verbose. Method logging is Disabled.
7/13/2005 10:40:12 AM - SourceSafe Initialization file(s) located at:
7/13/2005 10:40:12 AM - \\Phoenix\MB\Repository\MCVSS\srcsafe.ini
7/13/2005 10:40:12 AM - draco is attempting to listen for connections on secure port 8081
7/13/2005 10:40:12 AM - Waiting for a connection....secure = True
7/13/2005 10:40:19 AM - Connection accepted from 192.168.6.177:1127 on local address 192.168.6.143:8081, session id is 1.
7/13/2005 10:40:19 AM - 1: Connection from: gswx (192.168.6.177)
7/13/2005 10:40:19 AM - 1: Preparing to send the list of databases...
7/13/2005 10:40:19 AM - 1: Sending the challenge to the client.
7/13/2005 10:40:19 AM - 1: Sending the challenge message body to the client.
7/13/2005 10:40:19 AM - 1: Waiting for the client's response...
7/13/2005 10:40:21 AM - 1: Reviewing the client's response...
7/13/2005 10:40:21 AM - 1: Process the client's crypto login request.
7/13/2005 10:40:21 AM - 1: User 'GS' requesting to login to database '\\Phoenix\MB\Repository\MCVSS\srcsafe.ini'
7/13/2005 10:40:21 AM - 1: Client is speaking protocol version 2.0
7/13/2005 10:40:21 AM - 1: Attempting to login WITH crypto.
7/13/2005 10:40:21 AM - 1: Verify the challenge string.
7/13/2005 10:40:21 AM - 1: Get the session key.
7/13/2005 10:40:21 AM - 1: Open the database.
7/13/2005 10:40:21 AM - 1: 'GS' connected to database \\Phoenix\MB\Repository\MCVSS\srcsafe.ini
7/13/2005 10:40:22 AM - 1: Received message number 102.
7/13/2005 10:40:22 AM - 1: Ignore remote dates = False
7/13/2005 10:40:22 AM - 1: GetFileList project: $/MCV/SharedComponents/Security/PSMS/TestCode/res
7/13/2005 10:40:22 AM - 1: Time to execute: 0 minutes, 0 seconds, 312 milliseconds.
7/13/2005 10:40:24 AM - 1: Received message number 102.
7/13/2005 10:40:24 AM - 1: Ignore remote dates = False
7/13/2005 10:40:24 AM - 1: GetFileList project: $/MCV/SharedComponents/Security
7/13/2005 10:40:24 AM - 1: Time to execute: 0 minutes, 0 seconds, 15 milliseconds.
7/13/2005 10:40:26 AM - 1: Received message number 102.
7/13/2005 10:40:26 AM - 1: Ignore remote dates = False
7/13/2005 10:40:26 AM - 1: GetFileList project: $/MCV/SharedComponents
7/13/2005 10:40:26 AM - 1: Time to execute: 0 minutes, 0 seconds, 15 milliseconds.
7/13/2005 10:40:28 AM - 1: Received message number 102.
7/13/2005 10:40:28 AM - 1: Ignore remote dates = False
7/13/2005 10:40:28 AM - 1: GetFileList project: $/MCV/3rdPartyComponents/DXT
7/13/2005 10:40:29 AM - 1: Time to execute: 0 minutes, 0 seconds, 203 milliseconds.
7/13/2005 10:40:58 AM - 1: Received message number 105.
7/13/2005 10:40:58 AM - 1: GetFile() file=DXT_F.tfl
7/13/2005 10:41:18 AM - 1: Getting version information: $/MCV/3rdPartyComponents/DXT/DXT_F.tfl
7/13/2005 10:45:35 AM - 1: Exception: An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full
7/13/2005 10:45:40 AM - 1: Error processing client request: at System.Net.Sockets.Socket.Send(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
at ClassicService.MessageBody.Send(Socket socket, Crypto crypto, FileStream file)
at ClassicService.Client.SendFile(ProtocolMessage messageIn, ProtocolMessage messageOut, IVSSItem file, String strParentProject, Boolean bCompress, Boolean bUnixEOL, Boolean bMacEOL, Boolean bIsDeleted)
at ClassicService.Client.GetFile(String strProject, String strFile, ProtocolMessage messageIn, ProtocolMessage messageOut)
at ClassicService.Client.GetFile(ProtocolMessage messageIn, ProtocolMessage messageOut)
at ClassicService.Client.ProcessMessage(ProtocolMessage messageIn, ProtocolMessage messageOut)
at ClassicService.Client.GetMessage()
7/13/2005 10:49:04 AM - 1: Exception: Index was outside the bounds of the array.
7/13/2005 10:49:04 AM - 1: Error processing client request: at ClassicService.ServerException..ctor(Int32 id, String data)
at ClassicService.ProtocolMessage.ParseStream(Socket socket, Crypto crypto)
at ClassicService.Client.GetMessage()
7/13/2005 10:49:04 AM - 1: User GS disconnected from gswx.
7/13/2005 10:49:04 AM - Connection accepted from 192.168.6.177:1151 on local address 192.168.6.143:8081, session id is 2.
7/13/2005 10:49:04 AM - 1: Error removing user temp folder 'C:\Program Files\SourceOffSite Server\temp\GS632568480217031250'.
7/13/2005 10:49:04 AM - The process cannot access the file "DXT_F.tfl.z" because it is being used by another process.
7/13/2005 10:49:05 AM - 2: Connection from: gswx (192.168.6.177)
7/13/2005 10:49:05 AM - 2: Preparing to send the list of databases...
7/13/2005 10:49:05 AM - 2: Sending the challenge to the client.
7/13/2005 10:49:05 AM - 2: Sending the challenge message body to the client.
7/13/2005 10:49:05 AM - 2: Waiting for the client's response...
7/13/2005 10:49:05 AM - 2: Reviewing the client's response...
7/13/2005 10:49:05 AM - 2: Process the client's crypto login request.
7/13/2005 10:49:05 AM - 2: User 'GS' requesting to login to database '\\Phoenix\MB\Repository\MCVSS\srcsafe.ini'
7/13/2005 10:49:05 AM - 2: Client is speaking protocol version 2.0
7/13/2005 10:49:05 AM - 2: Attempting to login WITH crypto.
7/13/2005 10:49:05 AM - 2: Verify the challenge string.
7/13/2005 10:49:05 AM - 2: Get the session key.
7/13/2005 10:49:05 AM - 2: Open the database.
7/13/2005 10:49:06 AM - 2: 'GS' connected to database \\Phoenix\MB\Repository\MCVSS\srcsafe.ini
7/13/2005 10:49:06 AM - 2: Received message number 102.
7/13/2005 10:49:06 AM - 2: Ignore remote dates = False
7/13/2005 10:49:06 AM - 2: GetFileList project: $/MCV/3rdPartyComponents/DXT
7/13/2005 10:49:06 AM - 2: Time to execute: 0 minutes, 0 seconds, 343 milliseconds.
7/13/2005 10:49:11 AM - 2: Exception: Index was outside the bounds of the array.
7/13/2005 10:49:11 AM - 2: Error processing client request: at ClassicService.ServerException..ctor(Int32 id, String data)
at ClassicService.ProtocolMessage.ParseStream(Socket socket, Crypto crypto)
at ClassicService.Client.GetMessage()
7/13/2005 10:49:11 AM - 2: User GS disconnected from gswx.
<FILE ENDS>
Few things I observed, if they can help you in any way:
1. The file "DXT_F.tfl.z" in temp folder seems to be complete. Probably SoSServer is able to get the file down, problem is only in sending.
2. During transfer the mem usage of entire system shot up to 1.08GB
4. The SoSServer was using some 380MB of RAM with CPU Usage 00
5. Even after terminating the download from client the SoSServer mem usage remained the same, the system had to be restarted
Thanks,
GS
The log file is small enough, so is reproduced here:
<FILE BEGINS>
7/13/2005 10:40:11 AM - ****************************************************
7/13/2005 10:40:11 AM - SourceOffSite Server 4.1 Professional - With Cryptography
7/13/2005 10:40:11 AM - CurrentCulture is en-US.
7/13/2005 10:40:11 AM - Server Information
7/13/2005 10:40:11 AM - Operating System: Microsoft(R) Windows(R) Server 2003, Standard Edition
7/13/2005 10:40:11 AM - Service Pack: 1.0
7/13/2005 10:40:11 AM - OS Version: 5.2.3790
7/13/2005 10:40:11 AM - Locale: Ox0409
7/13/2005 10:40:11 AM - OSLanguage: 1033
7/13/2005 10:40:11 AM - Total Physical Memory: 639.5 MB
7/13/2005 10:40:11 AM -
7/13/2005 10:40:11 AM - SSAPI.dll Information:
7/13/2005 10:40:11 AM - Location: file:///C:/Program Files/SourceOffSite Server/Interop.SourceSafeTypeLib.DLL
7/13/2005 10:40:11 AM - DisplayName: Interop.SourceSafeTypeLib, Version=5.1.0.0, Culture=neutral, PublicKeyToken=null
7/13/2005 10:40:11 AM -
7/13/2005 10:40:11 AM - Started at 7/13/2005 10:40:11 AM
7/13/2005 10:40:11 AM - General logging level is Verbose. Method logging is Disabled.
7/13/2005 10:40:12 AM - SourceSafe Initialization file(s) located at:
7/13/2005 10:40:12 AM - \\Phoenix\MB\Repository\MCVSS\srcsafe.ini
7/13/2005 10:40:12 AM - draco is attempting to listen for connections on secure port 8081
7/13/2005 10:40:12 AM - Waiting for a connection....secure = True
7/13/2005 10:40:19 AM - Connection accepted from 192.168.6.177:1127 on local address 192.168.6.143:8081, session id is 1.
7/13/2005 10:40:19 AM - 1: Connection from: gswx (192.168.6.177)
7/13/2005 10:40:19 AM - 1: Preparing to send the list of databases...
7/13/2005 10:40:19 AM - 1: Sending the challenge to the client.
7/13/2005 10:40:19 AM - 1: Sending the challenge message body to the client.
7/13/2005 10:40:19 AM - 1: Waiting for the client's response...
7/13/2005 10:40:21 AM - 1: Reviewing the client's response...
7/13/2005 10:40:21 AM - 1: Process the client's crypto login request.
7/13/2005 10:40:21 AM - 1: User 'GS' requesting to login to database '\\Phoenix\MB\Repository\MCVSS\srcsafe.ini'
7/13/2005 10:40:21 AM - 1: Client is speaking protocol version 2.0
7/13/2005 10:40:21 AM - 1: Attempting to login WITH crypto.
7/13/2005 10:40:21 AM - 1: Verify the challenge string.
7/13/2005 10:40:21 AM - 1: Get the session key.
7/13/2005 10:40:21 AM - 1: Open the database.
7/13/2005 10:40:21 AM - 1: 'GS' connected to database \\Phoenix\MB\Repository\MCVSS\srcsafe.ini
7/13/2005 10:40:22 AM - 1: Received message number 102.
7/13/2005 10:40:22 AM - 1: Ignore remote dates = False
7/13/2005 10:40:22 AM - 1: GetFileList project: $/MCV/SharedComponents/Security/PSMS/TestCode/res
7/13/2005 10:40:22 AM - 1: Time to execute: 0 minutes, 0 seconds, 312 milliseconds.
7/13/2005 10:40:24 AM - 1: Received message number 102.
7/13/2005 10:40:24 AM - 1: Ignore remote dates = False
7/13/2005 10:40:24 AM - 1: GetFileList project: $/MCV/SharedComponents/Security
7/13/2005 10:40:24 AM - 1: Time to execute: 0 minutes, 0 seconds, 15 milliseconds.
7/13/2005 10:40:26 AM - 1: Received message number 102.
7/13/2005 10:40:26 AM - 1: Ignore remote dates = False
7/13/2005 10:40:26 AM - 1: GetFileList project: $/MCV/SharedComponents
7/13/2005 10:40:26 AM - 1: Time to execute: 0 minutes, 0 seconds, 15 milliseconds.
7/13/2005 10:40:28 AM - 1: Received message number 102.
7/13/2005 10:40:28 AM - 1: Ignore remote dates = False
7/13/2005 10:40:28 AM - 1: GetFileList project: $/MCV/3rdPartyComponents/DXT
7/13/2005 10:40:29 AM - 1: Time to execute: 0 minutes, 0 seconds, 203 milliseconds.
7/13/2005 10:40:58 AM - 1: Received message number 105.
7/13/2005 10:40:58 AM - 1: GetFile() file=DXT_F.tfl
7/13/2005 10:41:18 AM - 1: Getting version information: $/MCV/3rdPartyComponents/DXT/DXT_F.tfl
7/13/2005 10:45:35 AM - 1: Exception: An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full
7/13/2005 10:45:40 AM - 1: Error processing client request: at System.Net.Sockets.Socket.Send(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
at ClassicService.MessageBody.Send(Socket socket, Crypto crypto, FileStream file)
at ClassicService.Client.SendFile(ProtocolMessage messageIn, ProtocolMessage messageOut, IVSSItem file, String strParentProject, Boolean bCompress, Boolean bUnixEOL, Boolean bMacEOL, Boolean bIsDeleted)
at ClassicService.Client.GetFile(String strProject, String strFile, ProtocolMessage messageIn, ProtocolMessage messageOut)
at ClassicService.Client.GetFile(ProtocolMessage messageIn, ProtocolMessage messageOut)
at ClassicService.Client.ProcessMessage(ProtocolMessage messageIn, ProtocolMessage messageOut)
at ClassicService.Client.GetMessage()
7/13/2005 10:49:04 AM - 1: Exception: Index was outside the bounds of the array.
7/13/2005 10:49:04 AM - 1: Error processing client request: at ClassicService.ServerException..ctor(Int32 id, String data)
at ClassicService.ProtocolMessage.ParseStream(Socket socket, Crypto crypto)
at ClassicService.Client.GetMessage()
7/13/2005 10:49:04 AM - 1: User GS disconnected from gswx.
7/13/2005 10:49:04 AM - Connection accepted from 192.168.6.177:1151 on local address 192.168.6.143:8081, session id is 2.
7/13/2005 10:49:04 AM - 1: Error removing user temp folder 'C:\Program Files\SourceOffSite Server\temp\GS632568480217031250'.
7/13/2005 10:49:04 AM - The process cannot access the file "DXT_F.tfl.z" because it is being used by another process.
7/13/2005 10:49:05 AM - 2: Connection from: gswx (192.168.6.177)
7/13/2005 10:49:05 AM - 2: Preparing to send the list of databases...
7/13/2005 10:49:05 AM - 2: Sending the challenge to the client.
7/13/2005 10:49:05 AM - 2: Sending the challenge message body to the client.
7/13/2005 10:49:05 AM - 2: Waiting for the client's response...
7/13/2005 10:49:05 AM - 2: Reviewing the client's response...
7/13/2005 10:49:05 AM - 2: Process the client's crypto login request.
7/13/2005 10:49:05 AM - 2: User 'GS' requesting to login to database '\\Phoenix\MB\Repository\MCVSS\srcsafe.ini'
7/13/2005 10:49:05 AM - 2: Client is speaking protocol version 2.0
7/13/2005 10:49:05 AM - 2: Attempting to login WITH crypto.
7/13/2005 10:49:05 AM - 2: Verify the challenge string.
7/13/2005 10:49:05 AM - 2: Get the session key.
7/13/2005 10:49:05 AM - 2: Open the database.
7/13/2005 10:49:06 AM - 2: 'GS' connected to database \\Phoenix\MB\Repository\MCVSS\srcsafe.ini
7/13/2005 10:49:06 AM - 2: Received message number 102.
7/13/2005 10:49:06 AM - 2: Ignore remote dates = False
7/13/2005 10:49:06 AM - 2: GetFileList project: $/MCV/3rdPartyComponents/DXT
7/13/2005 10:49:06 AM - 2: Time to execute: 0 minutes, 0 seconds, 343 milliseconds.
7/13/2005 10:49:11 AM - 2: Exception: Index was outside the bounds of the array.
7/13/2005 10:49:11 AM - 2: Error processing client request: at ClassicService.ServerException..ctor(Int32 id, String data)
at ClassicService.ProtocolMessage.ParseStream(Socket socket, Crypto crypto)
at ClassicService.Client.GetMessage()
7/13/2005 10:49:11 AM - 2: User GS disconnected from gswx.
<FILE ENDS>
Few things I observed, if they can help you in any way:
1. The file "DXT_F.tfl.z" in temp folder seems to be complete. Probably SoSServer is able to get the file down, problem is only in sending.
2. During transfer the mem usage of entire system shot up to 1.08GB
4. The SoSServer was using some 380MB of RAM with CPU Usage 00
5. Even after terminating the download from client the SoSServer mem usage remained the same, the system had to be restarted
Thanks,
GS
Do you have more than 50 network bound protocols? Please read the following Microsoft KB article regarding the error message that you are receiving in your SOS log file and let me know if this resolves the problem.
http://support.microsoft.com/default.as ... -us;826757
Overall, it appears to be some type of memory issue.
Tonya Nunn
SourceGear Support
http://support.microsoft.com/default.as ... -us;826757
Overall, it appears to be some type of memory issue.
Tonya Nunn
SourceGear Support
We tried your product currently and had similar probelm. Operating on very big files that are over 100M may cause crash or slowdown sometimes. May it be due to our network connection issue or a limitation on trial version of SOS?? SourceAnyWhere seems to have a good performance on big files. We wish we could find out what is causing this problem for your product, and hopefully make a purchase decision asap.
Thanks.
Rothe
Thanks.
Rothe