Welcome Guest Search | Active Topics | Sign In | Register

Multiple Upload Controls on one page causes a delay? Options
DavidProut
Posted: Monday, February 9, 2009 10:49:24 AM
Rank: Member
Groups: Member

Joined: 1/8/2009
Posts: 12
Hi,

When I put 2 or more upload controls on one page I have an intermittent problem and was wondering if anybody else had a simlar problem? Basically whichever of the upload controls I use first (ie browse a file and click "upload") works fine, but when I try and use any of the other upload controls on the page there is a delay of anything up to 30 seconds when I click "upload".

This does not happen all the time. I can refresh the page with the upload controls on and it will all work fine, the next time I refresh the page this problem may occur.

Example:

Upload Control A
Upload Control B

When I load the page and select browse on Upload Control A, select a file and click upload it works fine. I then click browse on Upload Control B, select a file and click upload... at this point there is a delay and some 30 seconds later the file is uploaded as expected.

I can then refresh this page and the problem may not occur.

If I use Upload Control B on the page first, the problem can occur with Upload Control A.

Anybody else experience this problem? Is it wise to have multiple upload controls on the page?

Thanks in advance for any info or advice.
eo_support
Posted: Monday, February 9, 2009 11:07:37 AM
Rank: Administration
Groups: Administration

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

Thank you very much for posting in the forum. We will look into it and let you know as soon as we find anything.

Thanks!
eo_support
Posted: Monday, February 9, 2009 3:01:39 PM
Rank: Administration
Groups: Administration

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

We looked into the issue but have not been able to reproduce the problem. We did notice some delays when you run the page locally with Visual Studio, but that is appears to be caused by temporarily CPU spike that is mostly associated to the debugger. The delay does not seem to have any fixed pattern as you described. Also it disappears once we move the test code to IIS.

One thing that you want to check is the size of your view state. It is possible that when the page is initially loaded with very little data in view state, but upon post back a lot more data got stored into the view state (for example, a DataGrid got fully populated). In that case the large amount of view state data can significantly slow down the second post back. This issue will be more apparent if you also use AJAX on the page.

The easiest way to verify whether this is the problem is to try the uploader in a blank test project (do not just try it with a blank page inside the same project because issues might be triggered by other elements in your projects). If the problem does not occur, then you can compare the working setup and non-working setup.

Please let us know if the problem continues. In that case we will need to see the problem in order to troubleshoot. You can either put the project online so that we can access it here, or we can setup an online meeting so that we can take a look on your machine.

Thanks!
DavidProut
Posted: Tuesday, February 10, 2009 4:16:06 AM
Rank: Member
Groups: Member

Joined: 1/8/2009
Posts: 12
Hi,

A new visual studio project works fine, even in debug mode. I then moved the Web.config over from my other web application and sure enough the probably reappeared. So I started removing bits from the web.config until it started working properly; ie no delays. The funny thing is that when I remove the

<add name="EOWebRuntime" type="EO.Web.Runtime,EO.Web" />

From httpmodules it all works fine with no delays? But I'm sure I must need to include this line in the web.config?

Here is my web.config that doesn't work:

Code: XML

<!-- 
    Note: As an alternative to hand editing this file you can use the 
    web admin tool to configure settings for your application. Use
    the Website->Asp.Net Configuration option in Visual Studio.
    A full list of settings and comments can be found in 
    machine.config.comments usually located in 
    \Windows\Microsoft.Net\Framework\v2.x\Config 
-->
<configuration>
	<configSections>
		<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
			<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
				<section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication" />
				<sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
					<section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="Everywhere" />
					<section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication" />
					<section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication" />
				</sectionGroup>
			</sectionGroup>
		</sectionGroup>
	</configSections>
	<system.web>
		<pages>
			<controls>
				<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
			</controls>
		</pages>
		<!-- 
            Set compilation debug="true" to insert debugging 
            symbols into the compiled page. Because this 
            affects performance, set this value to true only 
            during development.
        -->
		<compilation debug="true">
			<assemblies>
				<add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
				<add assembly="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
				<add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
			</assemblies>
		</compilation>
		<httpHandlers>
			<remove verb="*" path="*.asmx" />
			<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
			<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
			<add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false" />
		</httpHandlers>
		<httpModules>
			<add name="EOWebRuntime" type="EO.Web.Runtime,EO.Web" />
			<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
		</httpModules>
		<httpRuntime maxRequestLength="1048576"/>
	</system.web>
	<system.web.extensions>
		<scripting>
			<scriptResourceHandler enableCompression="true" enableCaching="true" />
		</scripting>
	</system.web.extensions>
	<system.webServer>
		<validation validateIntegratedModeConfiguration="false" />
		<modules>
			<add name="ScriptModule" preCondition="integratedMode" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
		</modules>
		<handlers>
			<remove name="WebServiceHandlerFactory-Integrated" />
			<add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
			<add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
			<add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
		</handlers>
	</system.webServer>
</configuration>


Removing the "<add name="EOWebRuntime" type="EO.Web.Runtime,EO.Web" />" from httpmodules causes the delay to disappear. I'm using Visual Studio 2005, the web site generated from the AJAX Enabled WebSite template.

Any ideas?

Many thanks,

David.
eo_support
Posted: Tuesday, February 10, 2009 10:06:54 AM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,089
Hi David,

Please check your private message for more details.

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.