Welcome Guest Search | Active Topics | Sign In | Register

overflow error attempting to download a very large file using eo.web.downloader Options
Claudio Picco
Posted: Monday, June 25, 2012 3:53:18 AM
Rank: Newbie
Groups: Member

Joined: 6/25/2012
Posts: 3
Hi all,

I developed a small application to allow our intranet users to upload and download very large files.
When I try to download a very big file (let's say bigger than 1gb) with the downloader I get the following error:

[ArithmeticException: Overflow or underflow in the arithmetic operation.]

[HttpException (0x80004005): An error occurred while communicating with the remote host. The error code is 0x80070216.]
System.Runtime.Remoting.Proxies.RealProxy.EndInvokeHelper(Message reqMsg, Boolean bProxyCase) +518
System.Runtime.Remoting.Proxies.RemotingProxy.Invoke(Object NotUsed, MessageData& msgData) +401
EO.Web.Internal.a.EndInvoke(IAsyncResult A_0) +0
EO.Web.Internal.e8.a(IAsyncResult A_0) +71
System.Web.CallHandlerExecutionStep.OnAsyncHandlerCompletion(IAsyncResult ar) +136

am I doing something wrong or just the downloader can't handle this kind of file?

Thanks in advance for any help

Claudio

eo_support
Posted: Monday, June 25, 2012 10:23:32 AM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,195
Hi,

That may not work. HTTP protocol uses an integer in the header to represent the content size, that has a theoraticaly limit of 2G. Adding other overhead it is very normal for file over 1G to fail to download over HTTP. That's why almost all sites that allows you to download large files has some sort of download manager.

Thanks!
Claudio Picco
Posted: Tuesday, June 26, 2012 8:13:32 AM
Rank: Newbie
Groups: Member

Joined: 6/25/2012
Posts: 3
Thanks for your answer, I will find another way to allow users to download large files then.

Another question: what about the ajaxuploader control? is there a timeout or something that makes it stop functioning on very long uploads (longer than 1,5 hours)? It seems that, despite web.config and server settings about timeout and session recycling, the control stops to work on uploads that take very long time (the dimension of the file is not a problem this time). This doesn't happen with the regular not asynchronous upload control, wich has always worked and has been tested with extremely large uploads that took over 4 hours to complete.

When the ajaxuploader reaches 100% no server side events are fired, the control remains locked and the temporary files appear to be truncated way before the control showed 100%

I know http is not the right way to manage huge uploads and downloads, I was just making an attempt to give users a nice interface, but it seems I have to choose another system!

Thanks
eo_support
Posted: Wednesday, June 27, 2012 4:19:25 PM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,195
Hi,

We have not been able to reproduce this problem. There are several things you can check:

1. You may want to add some code to trace your Global's Application_Start event. That will tell you when your application is being recycled. If your application is recycled while the upload is still in progress, then that will certainly cause problem for you.

2. Use a network tracer to trace the connection between your server and your browser. Sometimes a browser may decide to terminate a connection if that connection is kept for too long;

The AJAXUploader itself does not have a time out value on how long the upload takes. It does have a "server response" timer. While the upload is ongoing, the AJAXUploader will keep sending request to the server asking for the current progress (that's why it can display a progress bar). If that requests times out, you will get an error message.

Thanks!
Claudio Picco
Posted: Thursday, June 28, 2012 8:26:02 AM
Rank: Newbie
Groups: Member

Joined: 6/25/2012
Posts: 3
Hi,

I am pretty sure the application is not recycled or timed out during the upload process. I will check it with a tracer so I can provide more informations.
I am using the app thru a reverse proxy, so I will check that too.

The application is on a test machine, if you want to see its behaviour from there I can privately send you a link to it. Otherwise I will give you more informations when I am done testing it.

Thanks
Claudio
eo_support
Posted: Thursday, June 28, 2012 2:52:19 PM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,195
Hi,

I do not know what else to tell you then. The uploader goes through regular HTTP post to upload the file, so if that part works fine, then it will succeed; and if that part fails, then it will fail. In either case there isn't much can be done in the code --- it's very much between your browser and your server ---- if your server reset, then it will fail. If your browser give up, then it will fail, if your network has a hiccup, then it will fail.

As to the link, we actually usually don't investigate such issues unless you can isolate the problem and can demonstrate the problem is related to us. For example, if you network or server has a problem, then we won't be able to investigate that for you as not only that is beyond the scope of our support, but also beyond the scope of our expertise.

If however you can isolate and duplicate the problem on another server, you can send a test app to us along with detailed step by step instructions on how to reproduce it. We will be happy to look further if we have that.

Thanks!


You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.