COM+ Application sometime hangs after moving to Windows 2003 SP2

  Symptom ============ Customer has one COM+ application running in Windows 2000 well for long time. After moving this COM+ application to Windows 2003 SP2, they noticed that the COM+ application easily hangs under heavy load.   Captured dump files for analysis. When issue happens, multiple STA activities stuck on one STA thread under heavy…


How to run .NET component in a singleuse way

  We can set SingleUse for public classes in VB6 when creating VB ActiveX component , so that each interface call will raise new process to handle the request. Some customer would like to know how to implement in managed code.   Previously,  an ActiveX EXE project in VB6 can define one or more SingleUse…


System.Transaction may fail in multiple-thread environment

When implementing the same System.Transaction concurrently in multiple-threaded environment, for example:   a.                Main thread creates DTC transaction, receives DependentTransaction (created using Transaction.Current.DependentClone on the main thread b.               Child thread 1 enlists in this DTC transaction by creating a transaction scope based on the dependent transaction (passed via constructor) c.                Child thread 1 opens a…

3

Troubleshooting MSDTC — Possible scenarios that cause MSDTC restarting implicitly

As MSTC is the core Transaction Service, its restarting will cause other Transaction depended services stop working normally, such as SQL server. We already know some possible scenarios that will cause MSDTC restarting and have to perform the operations only when product environment will not be impacted, the scenarios can be:   1.         Reinstall MSDTC…

2

Dump out Commerce Server Site configurations by SQL Query

    Commerce Server 2002/2007 site has plenty of configuration sitings, it is not easily to verify them one by one in Commerce Server management UI after migrating or database restoring, especially for some Connection Strings.    I wrote one SQL query to dump out the information from database directly, this will help admin to…

1

IIS FTP Service Hang Due to Ports Contention in Passive-Mode

  IIS FTP is a stable and comparable simple service running in Inetinfo.exe. We seldom face performance issues regarding FTP itself, most of them are caused by network connection or system wide performance issue. Here is one interesting FTP performance case that is related to  FTP working mode and system ports resource.   Symptom ==========…

1

Cannot expand the COM+ list in the Component Services UI due to MSDTC service permission issue

MSDTC is the important Transaction service on window system. COM+ system, or other OLE/XA resource managers (such as SQL, MS Oracle client) heavily depend on it.   If the MSDTC doesn’t start, when we open Component Service UI or try to create transaction, will get similar error messages as below:   a.       0x8004D01B (The Transaction…

1

Failed to refresh site cache in Commerce Server 2007 due to Kerberos negotiation issue

  While we open Catalog Business Tool, and click the “Refresh site cache” link, we may get this HTTP 401 error message:    The server ‘MyServer’ of the application ‘OrdersWebService’ returned HTTP status code 401 (Unauthorized). The cache refresh URL used was ‘http://MyServer/OrdersWebService/SiteCacheRefresh.axd?CacheToRefresh=CatalogCache’.   In many situations, it is usually caused by:   1.       The…


Web Application Memory Leakage Caused by BSTR

  BSTR is not like a common value type, to use it, it must be allocated and freed explicitly, otherwise will cause various memory leaking problems. There is one case I worked before, I’d like to use it explain how we found out an improper implementation of BSTR in application and how to address it….


How does client communicate with MSDTC Cluster?

  Recently I got several calls from customers or internal about how MSDTC clients talks to MSDTC Cluster, this decides how to configure the firewall between them.   As we know, as a cluster resource, MSDTC has its virtual name and virtual IP address in a cluster group. When a MSDTC client tries to work…

1