|
Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com |
From: Jason Dear (JDear
DMTINTL.COM)Date: Fri Nov 09 2001 - 11:10:08 CST
Thanks Jeff,
I've read Tim Ewald's book. Actually it's lying open in front of me on the
desk while I try to figure this out.
Tim describes 3 situations which cause Activity deadlock, and I've
effectively ruled out all three. I'm also trying to create test code to
understand some variations on that theme, and I can quite successfully get 2
activities to deadlock each other.
What I'm struggling to understand is, if this is my problem, then how come
all 100 clients lock simultaneously. I can't reproduce this in a test
environment.
Jason.
-----Original Message-----
From: Jeff Moore [mailto:jmm
WEBRIDGE.COM]
Sent: 09 November 2001 16:51
To: DCOM
DISCUSS.MICROSOFT.COM
Subject: Re: Windows 2000 COM+ deadlock
It sounds like you probably have an Activity deadlock. You should probably
read the 'Transactional COM+' book by Tim Ewald. It is part of the
DevelopMentor series. Tim does a good job of explaining the subtle
differences between [D]COM/MTS and COM+. Moving an application from COM/MTS
is [usually] not as simple as upgrading the OS.
jeff
-----Original Message-----
From: Jason Dear [mailto:JDear
DMTINTL.COM]
Sent: Friday, November 09, 2001 1:57 AM
To: DCOM
DISCUSS.MICROSOFT.COM
Subject: Windows 2000 COM+ deadlock
We have a client server application which was written in VB. It uses several
components which are configured to run in MTS on a server, and around 100
clients connect to this. It uses an object per client model, where the
client app creates a server side object, and holds onto the reference for
the duration of the application. This in turn creates and releases other
MTS and non MTS objects as required, some in the same package, and some in
other packages.
The application has run happily for about 2 years on NT4, and we recently
decided to upgrade the servers to Windows 2000. This went live this week,
after successfull testing, however the whole application (all 100 users)
seems to freeze periodically (about 5 times yesterday during a 12 hour day).
The freeze does not seem to correct itself (there's no timeout), we left it
overnight to see if it would timeout, and it can only be fixed by shutting
down the COM+ packages.
Our first instinct was that this was a deadlock problem, however, I can't
see how we're causing it. We've checked that each component is in it's own
activity, and that there is a mix of threads (so our objects are not all in
the main STA). We're not creating new threads, or using callbacks, or using
WaitForSingleObject or its variants. Our transactional objects work with
both SQL Server, and MSMQ, however our code to access these, and our DB code
has not changed.
I am under huge pressure to find an answer to this, as the application is an
Insurance call center app, and the whole company stops taking business when
the application freezes, so any ideas would be hugely appreciated.
Thanks in advance,
Jason Dear
----------------------------------------------------------------
Users Guide http://discuss.microsoft.com/archives/mailfaq.asp
contains important info. Save time, search the archives at
http://discuss.microsoft.com/archives/index.html .
To unsubscribe, mailto:DCOM-signoff-request
DISCUSS.MICROSOFT.COM
----------------------------------------------------------------
Users Guide http://discuss.microsoft.com/archives/mailfaq.asp
contains important info. Save time, search the archives at
http://discuss.microsoft.com/archives/index.html .
To unsubscribe, mailto:DCOM-signoff-request
DISCUSS.MICROSOFT.COM
----------------------------------------------------------------
Users Guide http://discuss.microsoft.com/archives/mailfaq.asp
contains important info. Save time, search the archives at
http://discuss.microsoft.com/archives/index.html .
To unsubscribe, mailto:DCOM-signoff-request
DISCUSS.MICROSOFT.COM
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]