locked
ASP, com+, MTA - Not playing well together RRS feed

  • Question

  • User1110297989 posted

    Hi,

    I have a c++ com+ object that i'm using as my DB layer to communicate with Oracle.

    I can't make more than 1 concurrent request to an asp file that is using that com+

    All other requests just go to the ASP queue until the first thread finishes and the com+ returns.

    It is marked as an MTAthread in the c++ code.

    On iis => asp => Com Plus Properties => Execute in MTA = true

    Debugging (client & server) are set to false

    I'm on IIS 10

    This is from debugDiag => https://drive.google.com/open?id=0BwoJABE2FogsMG5jWDd5UGFXUmM

    I'm at a loss... 

    Monday, September 18, 2017 6:37 PM

Answers

  • User1110297989 posted

    Well, it seems that the problem has been found. 

    Apparently the asp session state is causing single threaded behaviour and to "fix" it i need to declare 

    <% @EnableSessionState=False %>
    

    At the top of my pages or do this on IIS level..

    https://msdn.microsoft.com/en-us/library/ms972335.aspx   (Tip #6)

    The problem is that i'm using session to store my userID as well as other things and changing that now is a major headache as I have an enterprise-level application.

    If only classic asp had the ability to set EnableSessionState to ReadOnly like asp.net does :(

    It has nothing to do with setting the com+ object class to MTA or enabling "run in MTA" in the IIS asp settings

    • Marked as answer by Anonymous Tuesday, September 28, 2021 12:00 AM
    Wednesday, September 27, 2017 3:21 PM

All replies

  • User-460007017 posted

    Hi SectionOne,

    I think it is a bit difficult to diagnose this issue. Maybe you could check this link to ensure the MTA com+ has been used correctly:

    https://msdn.microsoft.com/en-us/library/ms524510(v=vs.90).aspx

    Best Regards,

    Yuk Ding

    Tuesday, September 19, 2017 6:47 AM
  • User1110297989 posted
    Other than enabling executeInMTA, I dont see anything there that's relevant...
    Tuesday, September 19, 2017 7:13 AM
  • User-460007017 posted

    Hi SectionOne,

    It looks like the debug diagnostic report is requiring a further analyze with the dump file. So maybe you need to consult someone who is expert in dump analysis.

    Best Regards,

    Yuk Ding

    Thursday, September 21, 2017 7:28 AM
  • User1110297989 posted

    Is there someone who can instruct me as to the steps i need to take in c++ to make my object have MTA support?

    Sunday, September 24, 2017 1:43 PM
  • User-460007017 posted

    Hi SectionOne,

    Since this is a IIS forum, I'm afraid I can't provide the support for MTA or someone who can consult c++. Maybe you could ask stackoverflow or open the support case:

    https://support.microsoft.com/en-us

    Best Regards,

    Yuk Ding

    Wednesday, September 27, 2017 1:52 AM
  • User1110297989 posted

    Well, it seems that the problem has been found. 

    Apparently the asp session state is causing single threaded behaviour and to "fix" it i need to declare 

    <% @EnableSessionState=False %>
    

    At the top of my pages or do this on IIS level..

    https://msdn.microsoft.com/en-us/library/ms972335.aspx   (Tip #6)

    The problem is that i'm using session to store my userID as well as other things and changing that now is a major headache as I have an enterprise-level application.

    If only classic asp had the ability to set EnableSessionState to ReadOnly like asp.net does :(

    It has nothing to do with setting the com+ object class to MTA or enabling "run in MTA" in the IIS asp settings

    • Marked as answer by Anonymous Tuesday, September 28, 2021 12:00 AM
    Wednesday, September 27, 2017 3:21 PM