component that hangs web server
I have a component that seems to hang up my IIS virtual directory. This
componenent creates an ADO connection to an AS400 using IBM AS/400 Client
Access Express and Data Dyanmics Active Reports to create a pdf file from
the data returned. The problem is that the virtual directory becomes unresponsive
after some time but is not predicatable and I get no time out messgages from
IIS. BTW these components are being called from a web class.
I have created a couple diagnotic pages in another virutal directory. The
first page will create an ADO connection to the AS400 and return data from
SQL query and then close the objects. The second page also creates an ADO
connection to the AS400, retrieves data, utilizes the Data Dynamiccs Active
Reports and successfully creates my pdf file.
Now, what is the best way to determine what is causing my component to misbehave
while being hosted in a web class, while the same objects and dlls are used
in my diagnostic web pages.
Thanks in advance and any help would be appreciated.
Dennis M. Chin
Re: component that hangs web server
Thank you for your question. To be honest, the type of question you are asking
is outside the scope of this discussion session. But I am sure that if you
took the time to post this question, you have been frustrated by this issue
for some time.
Programming life used to be much simpler. You wrote some code (on punch
cards) and those commands went right to the CPU. Just you and the computer.
Your question demonstrates one of the difficulties in modern software development.
You are dealing with a lot of software interaction, and you only wrote about
one percent of it! Besides your Visual Basic code, you are dealing with
layers such as WebClasses, the Windows NT/2000 OS, the COM libraries, IIS,
MTS/COM+ (possibly), ISAPI, Client Access Express, Active Reports (a great
product, by the way), Acrobat (indirectly via your PDF output), IE or Netscape
on the client side, and about twenty other interacting products that I did
not even mention. And the problem could be in just about any of them.
To be honest again, I do not have the solution to your problem. But debugging
and problem solving are activities we both share. When I encounter a problem
like this, first I put my face in my hands and start to cry. No, just kidding.
I tend to take a divide-and-conquer approach with such problems. Since
I don't know where the problem is occurring, I have to one-by-one assume
that the problem is in a specific component. For instance, I may assume
that Client Access Express is causing the problem. I would write WebClasses
that remove Active Reports from the equation, and simply return HTML summaries
based on the existing AS/400 interaction. If the problem still happens,
then you know that Active Reports is not an issue and Client Access Express
is a more likely culprit.
Since you are working with third-party components, you can utilize the help
desks of these organizations. I have dealt with Data Dynamics before, and
they are very responsive and quite knowledgeable about their product (as
it should be). You should consider how these components interact with IIS.
Do these products use multiple threading at all? If not, then a component
lock could lock up the entire application for all users. Can this be adjusted?
Are there any shared memory issues that need to be addressed? Do you know
exactly where your code is locking up? Is it on a specific method call to
one of the components? You could log events at key locations in your code
to see how far processing got in your WebClasses.
The goal of such debugging is to isolate the smallest section of code that
still causes the problem. Then you can determine if it is your fault or
another vendor's fault. If the fault appears in the vendor's code, you can
work with them to implement a solution or a workaround.
Re: component that hangs web server
Do you have asp sessions enabled on IIS and cookies enabled in your browser?
If you start a new browser instance (not just a new window) does it still
If not, I don't have a clue. If yes, then I suspect your component use a
certain (long) amount of time to finish. If this is true, then I would log
or otherwise do an assertion that the component is really finish. When
finished, try again. Does it work? If yes then your job locks down your asp
session thread until it's finished.
Dennis Chin <firstname.lastname@example.org> wrote in message
> I have a component that seems to hang up my IIS virtual directory. This
> componenent creates an ADO connection to an AS400 using IBM AS/400 Client
> Access Express and Data Dyanmics Active Reports to create a pdf file from
> the data returned. The problem is that the virtual directory becomes
> after some time but is not predicatable and I get no time out messgages
> IIS. BTW these components are being called from a web class.
> I have created a couple diagnotic pages in another virutal directory. The
> first page will create an ADO connection to the AS400 and return data from
> SQL query and then close the objects. The second page also creates an ADO
> connection to the AS400, retrieves data, utilizes the Data Dynamiccs
> Reports and successfully creates my pdf file.
> Now, what is the best way to determine what is causing my component to
> while being hosted in a web class, while the same objects and dlls are
> in my diagnostic web pages.
> Thanks in advance and any help would be appreciated.
> Dennis M. Chin
By email@example.com in forum .NET
Last Post: 01-07-2003, 01:06 PM
By Steve Hiner in forum .NET
Last Post: 04-22-2002, 09:19 PM
By WebX Server in forum vb.announcements
Last Post: 09-27-2001, 05:55 AM
By Tim Romano in forum .NET
Last Post: 04-19-2001, 07:54 AM
By andriano in forum Enterprise
Last Post: 10-02-2000, 03:54 PM
Top DevX Stories
Easy Web Services with SQL Server 2005 HTTP Endpoints
JavaOne 2005: Java Platform Roadmap Focuses on Ease of Development, Sun Focuses on the "Free" in F.O.S.S.
Wed Yourself to UML with the Power of Associations
Microsoft to Add AJAX Capabilities to ASP.NET
IBM's Cloudscape Versus MySQL