all groups > dotnet distributed apps > november 2005 >
You're in the

dotnet distributed apps

group:

How to prevent corrupted binary downloads


How to prevent corrupted binary downloads Trumba
11/30/2005 9:36:04 AM
dotnet distributed apps: We've experienced two types of problems: 1) downloading assemblies from a
web-based application base and 2) downloading an MSI to install components on
a client machine.

We never made much headway with the first problem, the app would just fail
to run on some machines. There was a client exe installed on the client
machine which created an AppDomain with an http: base and downloaded
components. This would work most of the time and fail to load other times.
But it might be related to the second problem.

A small percentage of users would experience install failures due to a
corrupt MSI file. For these users the problem was repeatable, but other users
had no problem. Deleting temporary internet files would generally solve the
problem, so my theory was that somehow a corrupt version was downloaded and
got in the cache and subsequent requests just reloaded the corrupt data from
the cache. We finally solved the problem by giving the download directory a
1-minute expiration, so the cache copy would not get reused.

This could potentially explain the first problem too, but we never tried it.
It also is not very satisfactory for running a web application base, since
you really want the cache to reduce download traffic.

Only a small percentage of users saw this problem, but even 1% seems pretty
poor for a TCP transfer. Is there a more reliable way?

Re: How to prevent corrupted binary downloads Klaus H. Probst
12/8/2005 8:09:27 PM
I've seen problems like these (nasty, usually not easily reproduced) with
large HTTP transfers and web services when working over certain types of
proxies. If just a few of your customers are experiencing this issue try to
find out what proxy they use (on *their* side, nothing to do with yours) and
see if they have something in common there.

Sometimes asking the IT folks at the client sites to adjust their proxy
settings solved the problems... and sometimes it didn't. It's really a
hit-and-miss thing, not easy to diagnose.


--
Klaus H. Probst, MVP
http://www.simulplex.net/


[quoted text, click to view]

Re: How to prevent corrupted binary downloads Trumba
12/12/2005 11:20:03 AM
Does anyone know if the new 2.0 support for ClickOnce deployment handles
these kinds of errors more robustly? My experience is that you can probably
avoid the problems with some cache management and error retry code, but a
naive download strategy will fail.

Thanks
Peter

[quoted text, click to view]
Re: How to prevent corrupted binary downloads Klaus H. Probst
12/12/2005 5:43:46 PM
If there is a problem with your download code to begin with, then sure,
using something else will fix the issue.

If the problem is the proxy (like I said) or some other environmental
factor, then probably no.


--
Klaus H. Probst, MVP
http://www.simulplex.net/

[quoted text, click to view]

AddThis Social Bookmark Button