BorlandTalk.com Forum Index BorlandTalk.com
Borland discussion newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

ISAPI access violations

 
Post new topic   Reply to topic    BorlandTalk.com Forum Index -> Delphi Internet Isapi-WebBroker
View previous topic :: View next topic  
Author Message
Jan
Guest





PostPosted: Tue Feb 20, 2007 9:11 am    Post subject: ISAPI access violations Reply with quote



We've got an ISAPI webbroker dll (Delphi 7). We have a test client app that
simulates many users hitting the dll simultaneously - via Posts(Indy's
idhttp)- and these posts randomly return access violations. The more
"users"(well, 30 threads, spaced 5 secs apart in a client app) we hit it
with, the more access violations we get. We were getting a bunch of 500
Internal Server Errors back, but these were reduced to a very rare
occurrence once a CriticalSection was introduced. Also tried:

- Steve Trefethen's updated ISAPIThreadPool.pas
(http://www.stevetrefethen.com/blog/ISAPIThreadPoolForUseInDelphiWebBrokerApplications.aspx),
and placed it after ISAPIApp in the project file
- Disabling Norton anti-virus made a difference in reducing the AVs (but of
course we can't ask our clients to disable this)
- Increased the Application.MaxConnections

The errors look like "HTTP/1.1 500 Access violation at address 018622EC in
module 'MyISAPI.dll'. Write of address CE83EA6C"

Anybody else seen this behavior? I've inherited this thing, already fixed
several issues and tired of looking at it- so could use all the perspective
I can get Smile.

Thanks!
Jan
Back to top
danny heijl
Guest





PostPosted: Wed Feb 21, 2007 1:16 am    Post subject: Re: ISAPI access violations Reply with quote



Jan schreef:

Quote:
so could use all the perspective
I can get Smile.

Start by wrapping all major parts of the code inside try...except
blocks, add context information to each exception message (which
procedure function, parameter values, dataset related info, user related
info, etc...), log it, and make a nice error page with it.

This way you will probably see a pattern emerging that will hopefully
give you an indication of were to start looking.

Danny
---
Back to top
Post new topic   Reply to topic    BorlandTalk.com Forum Index -> Delphi Internet Isapi-WebBroker All times are GMT
Page 1 of 1

 
 


Powered by phpBB © 2001, 2006 phpBB Group
.