Asp.net web application fails to Access db after surfing for awhile

M

mark

Can't figure this one out. I appears to not be code related. After
surfing my asp.net web app for a while 5 - 10 min. it fails to open
any further connections to my access 2000 database. There seems to be
no set drop off point either that would point to a specific code
problem. I went through and made sure that I explicitly closed all my
connections when done and even called the dispose method after each
one. I noticed that asp.net puts a lock on the database file after
login, and also the size of the database itself grows from about 500k
to 2-3mb in size. Could this be a clue.
The site uses Forms authentication. I made sure that the aspnet
client has full permissions on the folder.
The database lock stays even after I close out of the site. When the
site stops connecting after surfing for a while, I upload my
web.config file again and that seems to reset everything for a while.

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<!-- Online connstring -->
<!--<add key="ConnectionString"
value="Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=d:\webs\baker101\netdata\TIMEX.mdb"/> -->
<!-- <add key="OrderConnectionString"
value="Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=d:\webs\baker101\netdata\bsxmloTest3.mdb"/>-->
<add key="ConnectionString"
value="Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=c://webshare/wwwroot/timex/timex.mdb"/>
<add key="OrderConnectionString"
value="Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=c://webshare/wwwroot/timex/bsxmloTest3.mdb"/>
<!-- offline connstring -->
</appSettings>
<system.web>

<!-- DYNAMIC DEBUG COMPILATION
Set compilation debug="true" to insert debugging symbols
(.pdb information)
into the compiled page. Because this creates a larger file
that executes
more slowly, you should set this value to true only when
debugging and to
false at all other times. For more information, refer to the
documentation about
debugging ASP.NET files.
-->
<compilation defaultLanguage="vb" debug="true" />

<!-- CUSTOM ERROR MESSAGES
Set customErrors mode="On" or "RemoteOnly" to enable custom
error messages, "Off" to disable.
Add <error> tags for each of the errors you want to handle.
-->
<customErrors mode="Off" />

<!-- AUTHENTICATION
This section sets the authentication policies of the
application. Possible modes are "Windows",
"Forms", "Passport" and "None"
-->
<authentication mode="Forms">
<forms name="IBuySpyStoreAuth" loginUrl="login.aspx"
protection="All" path="/" />
</authentication>


<!-- AUTHORIZATION
This section sets the authorization policies of the
application. You can allow or deny access
to application resources by user or role. Wildcards: "*"
mean everyone, "?" means anonymous
(unauthenticated) users.
-->
<authorization>
<allow users="*" /> <!-- Allow all users -->

<!-- <allow users="[comma separated list of users]"
roles="[comma separated list of roles]"/>
<deny users="[comma separated list of users]"
roles="[comma separated list of roles]"/>
-->
</authorization>

<!-- APPLICATION-LEVEL TRACE LOGGING
Application-level tracing enables trace log output for every
page within an application.
Set trace enabled="true" to enable application trace
logging. If pageOutput="true", the
trace information will be displayed at the bottom of each
page. Otherwise, you can view the
application trace log by browsing the "trace.axd" page from
your web application
root.
-->
<trace enabled="false" requestLimit="10" pageOutput="false"
traceMode="SortByTime" localOnly="true" />


<!-- SESSION STATE SETTINGS
By default ASP.NET uses cookies to identify which requests
belong to a particular session.
If cookies are not available, a session can be tracked by
adding a session identifier to the URL.
To disable cookies, set sessionState cookieless="true".
-->
<sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;user
id=sa;password="
cookieless="false"
timeout="20"
/>

<!-- GLOBALIZATION
This section sets the globalization settings of the
application.
-->
<globalization requestEncoding="utf-8" responseEncoding="utf-8" />

</system.web>
<location path="ProductList.aspx">
<system.web>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</location>
<location path="ProductDetails.aspx">
<system.web>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</location>
<location path="ShoppingCart.aspx">
<system.web>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</location>
<location path="OrderForm.aspx">
<system.web>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</location>
<location path="Summary.aspx">
<system.web>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</location>
</configuration>
 
K

Keith Seven

Hi Mark,

I am dealing with the same issue in my company. My guess is that root
cause and problem statement should be around the web.config file.
Curious, which version of the framework are you using? My system is
W2K SP3, IIS 5, Framework 1.0 SP2.

The obvious thing I want to try but have not is to set in IIS the
Custom HTTP Header, cache-control, no-cache, for just the web.config
file.

--Keith
 
M

mark dondero

Keith,

I've since solved the problem. I think the root of the problem was I
was building the solution in debug mode and uploading this to my web
server. I read somewhere that this puts an excess load on the
application since it does alot of extra things in this mode. I also
made sure all my connections were being closed. I added a Finally to my
Try's and placed all my object cleanup in there(don't think this was the
problem though). Also in my web.config, set
<compilation defaultLanguage="vb" debug="false" /> this coincides with
build in release mode. When I uploaded this release version to the web
server, I noticed after surfing for awhile the db file size remained
small and there was no locking file showing up either(similar to my
classic asp sites).
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,744
Messages
2,569,484
Members
44,904
Latest member
HealthyVisionsCBDPrice

Latest Threads

Top