Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > ASP .Net > Asp.net runtime error - multiple users with Access Db

Reply
Thread Tools

Asp.net runtime error - multiple users with Access Db

 
 
mark
Guest
Posts: n/a
 
      10-20-2003
I have an asp.net ecommerce web application on a remote web server.
I'm using an Access database on the back end. I've notice a few
strange things. When I mimic an multiple user environment by surfin
it in multiple browsers simultaneously the site generates a generic
runtime error after awhile. I'm thinking this has something to do
with my access database and multiple connections. I'm using forms
authentication with a login page. Is there something else I should be
specifing in my connection to promote the use of multiple users. I've
had no problem in the past with access and asp 3.0 ecommerce sites.
I've also noticed that access makes the lock file for the database.
Could this be a problem. I've never noticed this with my asp 3.0
databases. When I put custom errors = Off to show the error it goes
back to a database.Open command in one of my class files, not always
the same one though.
Also a problem with the lock, can't ftp an updated database until the
lock is gone. Very annoying. Any help will be greatly appreciated.
Thanks.


<?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>
 
Reply With Quote
 
 
 
 
Cowboy \(Gregory A. Beamer\)
Guest
Posts: n/a
 
      10-20-2003
This is a common problem with Access databases in web applications. It was
also common in ASP 3.0, but perhaps not as noticeable due to the nature of
COM.

Some advice:
1. Close all connections
2. Dispose all objects with a Dispose() method

Access is not a good eCommerce database, or a web database. It is often
used, as it is easy to implement and cheap to deploy, but it has too many
problems from an Enterprise app perspective.

--
Gregory A. Beamer
MVP; MCP: +I, SE, SD, DBA

************************************************** ********************
Think Outside the Box!
************************************************** ********************
"mark" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed) om...
> I have an asp.net ecommerce web application on a remote web server.
> I'm using an Access database on the back end. I've notice a few
> strange things. When I mimic an multiple user environment by surfin
> it in multiple browsers simultaneously the site generates a generic
> runtime error after awhile. I'm thinking this has something to do
> with my access database and multiple connections. I'm using forms
> authentication with a login page. Is there something else I should be
> specifing in my connection to promote the use of multiple users. I've
> had no problem in the past with access and asp 3.0 ecommerce sites.
> I've also noticed that access makes the lock file for the database.
> Could this be a problem. I've never noticed this with my asp 3.0
> databases. When I put custom errors = Off to show the error it goes
> back to a database.Open command in one of my class files, not always
> the same one though.
> Also a problem with the lock, can't ftp an updated database until the
> lock is gone. Very annoying. Any help will be greatly appreciated.
> Thanks.
>
>
> <?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>



 
Reply With Quote
 
 
 
 
mark
Guest
Posts: n/a
 
      10-21-2003
I forgot to mention that when this error occurs, it brings down the
entire site for all other users as well. I recopy my web.config file
to the web server and this clears the error. I've noticed also that
the size of the database grows substantially after I login and begin
to surf around(500k to 2.5mb). I will go back again to make sure
everything is closed and disposed. Could there be a problem with the
garbage collection not being called enough?



"Cowboy \(Gregory A. Beamer\)" <(E-Mail Removed)> wrote in message news:<(E-Mail Removed)>...
> This is a common problem with Access databases in web applications. It was
> also common in ASP 3.0, but perhaps not as noticeable due to the nature of
> COM.
>
> Some advice:
> 1. Close all connections
> 2. Dispose all objects with a Dispose() method
>
> Access is not a good eCommerce database, or a web database. It is often
> used, as it is easy to implement and cheap to deploy, but it has too many
> problems from an Enterprise app perspective.
>
> --
> Gregory A. Beamer
> MVP; MCP: +I, SE, SD, DBA
>
> ************************************************** ********************
> Think Outside the Box!
> ************************************************** ********************
> "mark" <(E-Mail Removed)> wrote in message
> news:(E-Mail Removed) om...
> > I have an asp.net ecommerce web application on a remote web server.
> > I'm using an Access database on the back end. I've notice a few
> > strange things. When I mimic an multiple user environment by surfin
> > it in multiple browsers simultaneously the site generates a generic
> > runtime error after awhile. I'm thinking this has something to do
> > with my access database and multiple connections. I'm using forms
> > authentication with a login page. Is there something else I should be
> > specifing in my connection to promote the use of multiple users. I've
> > had no problem in the past with access and asp 3.0 ecommerce sites.
> > I've also noticed that access makes the lock file for the database.
> > Could this be a problem. I've never noticed this with my asp 3.0
> > databases. When I put custom errors = Off to show the error it goes
> > back to a database.Open command in one of my class files, not always
> > the same one though.
> > Also a problem with the lock, can't ftp an updated database until the
> > lock is gone. Very annoying. Any help will be greatly appreciated.
> > Thanks.
> >
> >
> > <?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>

 
Reply With Quote
 
Cowboy \(Gregory A. Beamer\)
Guest
Posts: n/a
 
      10-23-2003
Call Dispose() on every object that has a Dispose() method. DO not try to
control GC yourself, unless you are planning on taking over GC completely.
(NOT a good idea)

It is normal for the ASPNET worker process to lock up when there is an issue
with database, so other users locking is common. When you recopy the
web.config, you force the application to reset, as .NET resets when there
are config changes.


--
Gregory A. Beamer
MVP; MCP: +I, SE, SD, DBA

************************************************** ********************
Think Outside the Box!
************************************************** ********************
"mark" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed) om...
> I forgot to mention that when this error occurs, it brings down the
> entire site for all other users as well. I recopy my web.config file
> to the web server and this clears the error. I've noticed also that
> the size of the database grows substantially after I login and begin
> to surf around(500k to 2.5mb). I will go back again to make sure
> everything is closed and disposed. Could there be a problem with the
> garbage collection not being called enough?
>
>
>
> "Cowboy \(Gregory A. Beamer\)" <(E-Mail Removed)> wrote

in message news:<(E-Mail Removed)>...
> > This is a common problem with Access databases in web applications. It

was
> > also common in ASP 3.0, but perhaps not as noticeable due to the nature

of
> > COM.
> >
> > Some advice:
> > 1. Close all connections
> > 2. Dispose all objects with a Dispose() method
> >
> > Access is not a good eCommerce database, or a web database. It is often
> > used, as it is easy to implement and cheap to deploy, but it has too

many
> > problems from an Enterprise app perspective.
> >
> > --
> > Gregory A. Beamer
> > MVP; MCP: +I, SE, SD, DBA
> >
> > ************************************************** ********************
> > Think Outside the Box!
> > ************************************************** ********************
> > "mark" <(E-Mail Removed)> wrote in message
> > news:(E-Mail Removed) om...
> > > I have an asp.net ecommerce web application on a remote web server.
> > > I'm using an Access database on the back end. I've notice a few
> > > strange things. When I mimic an multiple user environment by surfin
> > > it in multiple browsers simultaneously the site generates a generic
> > > runtime error after awhile. I'm thinking this has something to do
> > > with my access database and multiple connections. I'm using forms
> > > authentication with a login page. Is there something else I should be
> > > specifing in my connection to promote the use of multiple users. I've
> > > had no problem in the past with access and asp 3.0 ecommerce sites.
> > > I've also noticed that access makes the lock file for the database.
> > > Could this be a problem. I've never noticed this with my asp 3.0
> > > databases. When I put custom errors = Off to show the error it goes
> > > back to a database.Open command in one of my class files, not always
> > > the same one though.
> > > Also a problem with the lock, can't ftp an updated database until the
> > > lock is gone. Very annoying. Any help will be greatly appreciated.
> > > Thanks.
> > >
> > >
> > > <?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>



 
Reply With Quote
 
mark
Guest
Posts: n/a
 
      10-23-2003
Again thanks for the helpful information. Just an update. I realized
I was leaving it in debug mode when I built the project and was
uploading this to the web server. I read somewhere that this causes a
heavy load to the application. I rebuilt in release mode and set
debug to false in web.config, I called dispose on all objects I could
and added Finally to my trys where I moved all cleanup of objects
where I could. I just tested it quickly and think this combination
may have solved the problem. After surfing for several minutes the
database file size stays nice and small and the .ldb locking file
doesn't appear. I'm guessing the main culprit was leaving the site in
debug mode. Any thoughts on this? And Again thanks for all the help.


"Cowboy \(Gregory A. Beamer\)" <(E-Mail Removed)> wrote in message news:<(E-Mail Removed)>...
> Call Dispose() on every object that has a Dispose() method. DO not try to
> control GC yourself, unless you are planning on taking over GC completely.
> (NOT a good idea)
>
> It is normal for the ASPNET worker process to lock up when there is an issue
> with database, so other users locking is common. When you recopy the
> web.config, you force the application to reset, as .NET resets when there
> are config changes.
>
>
> --
> Gregory A. Beamer
> MVP; MCP: +I, SE, SD, DBA
>
> ************************************************** ********************
> Think Outside the Box!
> ************************************************** ********************
> "mark" <(E-Mail Removed)> wrote in message
> news:(E-Mail Removed) om...
> > I forgot to mention that when this error occurs, it brings down the
> > entire site for all other users as well. I recopy my web.config file
> > to the web server and this clears the error. I've noticed also that
> > the size of the database grows substantially after I login and begin
> > to surf around(500k to 2.5mb). I will go back again to make sure
> > everything is closed and disposed. Could there be a problem with the
> > garbage collection not being called enough?
> >
> >
> >
> > "Cowboy \(Gregory A. Beamer\)" <(E-Mail Removed)> wrote

> in message news:<(E-Mail Removed)>...
> > > This is a common problem with Access databases in web applications. It

> was
> > > also common in ASP 3.0, but perhaps not as noticeable due to the nature

> of
> > > COM.
> > >
> > > Some advice:
> > > 1. Close all connections
> > > 2. Dispose all objects with a Dispose() method
> > >
> > > Access is not a good eCommerce database, or a web database. It is often
> > > used, as it is easy to implement and cheap to deploy, but it has too

> many
> > > problems from an Enterprise app perspective.
> > >
> > > --
> > > Gregory A. Beamer
> > > MVP; MCP: +I, SE, SD, DBA
> > >
> > > ************************************************** ********************
> > > Think Outside the Box!
> > > ************************************************** ********************
> > > "mark" <(E-Mail Removed)> wrote in message
> > > news:(E-Mail Removed) om...
> > > > I have an asp.net ecommerce web application on a remote web server.
> > > > I'm using an Access database on the back end. I've notice a few
> > > > strange things. When I mimic an multiple user environment by surfin
> > > > it in multiple browsers simultaneously the site generates a generic
> > > > runtime error after awhile. I'm thinking this has something to do
> > > > with my access database and multiple connections. I'm using forms
> > > > authentication with a login page. Is there something else I should be
> > > > specifing in my connection to promote the use of multiple users. I've
> > > > had no problem in the past with access and asp 3.0 ecommerce sites.
> > > > I've also noticed that access makes the lock file for the database.
> > > > Could this be a problem. I've never noticed this with my asp 3.0
> > > > databases. When I put custom errors = Off to show the error it goes
> > > > back to a database.Open command in one of my class files, not always
> > > > the same one though.
> > > > Also a problem with the lock, can't ftp an updated database until the
> > > > lock is gone. Very annoying. Any help will be greatly appreciated.
> > > > Thanks.
> > > >
> > > >
> > > > <?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>

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Very annoying error: Access to the path is denied. ASP.NET is not authorized to access the requested resource. Consider granting access rights to the resource to the ASP.NET request identity Jay ASP .Net 2 08-20-2007 07:38 PM
Controlling concurrency to access web pages by multiple users Matt Adamson ASP General 1 10-04-2006 11:12 AM
Keep operator terminal logged in, record access by multiple users sheep99dog Computer Security 1 10-02-2006 08:02 PM
Runtime.exec(String[]) Doesn't Always Work, bBut Runtime.exec(String) Does Hal Vaughan Java 11 05-22-2006 04:49 PM
Can I use Access if I want to have multiple users connected Tom Wild ASP .Net 2 08-25-2003 03:33 PM



Advertisments