473,394 Members | 1,693 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,394 software developers and data experts.

ASP.NET using COM+ is deadlocking

Hi,

An ASP.NET 2003 application that uses VB6 COM+ components, works fine with
3-6 users, but gets "frozen" when accesed by 12-or more users.

At some point an error message similar to "OOA: Out of Apartments" was
displayed. This was reported to me, I did not see it.

We also got a warning/error "Component using serialization may cause
deadlock".

This used to work fine on NT4, but Windows 2000 breaks it.

Any ideas?
My own are:
the COM+ components being all STA are not scallable
the thread pool for STA in Windows 2000 and later is 7*NumberOfProcessors
maybe the deadlock is activity related, i.e. usage of shared components,
which is worsened by the higher concurrency

--
Thanks in advance,

Juan Dent, M.Sc.
Sep 12 '06 #1
2 1344
KJ
While not a specific answer to your post, the following article
contains some interesting information regarding the situation you are
in:

http://msdn.microsoft.com/library/de...s_MTStoCOM.asp

Juan Dent wrote:
Hi,

An ASP.NET 2003 application that uses VB6 COM+ components, works fine with
3-6 users, but gets "frozen" when accesed by 12-or more users.

At some point an error message similar to "OOA: Out of Apartments" was
displayed. This was reported to me, I did not see it.

We also got a warning/error "Component using serialization may cause
deadlock".

This used to work fine on NT4, but Windows 2000 breaks it.

Any ideas?
My own are:
the COM+ components being all STA are not scallable
the thread pool for STA in Windows 2000 and later is 7*NumberOfProcessors
maybe the deadlock is activity related, i.e. usage of shared components,
which is worsened by the higher concurrency

--
Thanks in advance,

Juan Dent, M.Sc.
Sep 12 '06 #2
Hi Juan,

As the article suggested, if applications migrated from MTS to COM+ and
client is sharing references to an "Apartment" instance, the
synchronization deadlocks will become more magnified under COM+. So it's
recommended avoid sharing reference to any objects, especially those marked
as "Apartment."

Of course I understand that changing code may have great impact and not
practical sometimes. So another possible workaround is to emulate MTS
behavior as described in following kB:

#Registry key for tuning COM+ thread and activity
http://support.microsoft.com/kb/q303071/

Please tell me the result of this suggestion and we can further discussion
what to do next.

Sincerely,
Walter Wang (wa****@online.microsoft.com, remove 'online.')
Microsoft Online Community Support

==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscripti...ult.aspx#notif
ications. If you are using Outlook Express, please make sure you clear the
check box "Tools/Options/Read: Get 300 headers at a time" to see your reply
promptly.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscripti...t/default.aspx.
==================================================

This posting is provided "AS IS" with no warranties, and confers no rights.

Sep 13 '06 #3

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
by: Yves Touze | last post by:
Hi All, I'm trying to migrate from SQL Server 7.0 to SQL Server 2000. I've got some ASP page which call VB components that retrieve shaped recordsets from SQL Server using the MSDATASHAPE...
1
by: Johnny | last post by:
Hiya, I've been getting some deadlocking that I've never seen before. I rewrote just over 10,000 lines of code, so I can't really go back and comment out what I've done. In a nutshell, could my...
5
by: Marcel Gelijk | last post by:
Hi, I am trying to create a User Control that is located in a seperate class library. The User Control contains a textbox and a button. The page generates an exception when it tries to access...
1
by: sathya | last post by:
hi, i have problem in httphandler, my problem is that when i am trying to use server.execute(/default.aspx) i am getting error.... Here i am trying to redirect from home.aspx to...
15
by: Nathan | last post by:
I have an aspx page with a data grid, some textboxes, and an update button. This page also has one html input element with type=file (not inside the data grid and runat=server). The update...
4
by: James | last post by:
I have a VB windows forms application that accesses a Microsoft Access database that has been secured using user-level security. The application is being deployed using No-Touch deployment. The...
4
by: fmatamoros | last post by:
I sometimes get the following error from an update statement in a stored procedure: Transaction (Process ID 62) was deadlocked on thread | communication buffer resources with another process and...
3
by: JDeats | last post by:
I have some .NET 1.1 code that utilizes this technique for encrypting and decrypting a file. http://support.microsoft.com/kb/307010 In .NET 2.0 this approach is not fully supported (a .NET 2.0...
6
by: Ricardo Vazquez | last post by:
Hello everybody, I'm programming a TCP server. During the stress tests I noticed that maybe my socket-receiving thread became deaf after an hour of heavy stress. I think that the reason could...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.