IIS hangs when openning a connection w MSDAORA provider (0x80040e22)

Ask a Question related to ASP Database, Design and Development.

  1. #1

    Default IIS hangs when openning a connection w MSDAORA provider (0x80040e22)

    Hello.

    The script below opens an ADO connection to an Oracle DB. When run from the
    command line (cscript), it works. But when run from an ASP page, the IIS
    hangs during the "oracon.Open()" command (details below).
    I've done further investigation (see below), but am unable to find a
    solution. Can anyone help me?

    Thanks,
    Martin.

    var oracon = new ActiveXObject("ADODB.Connection");
    oracon.ConnectionString = "Provider=MSDAORA;"
    +"Data Source=sss; User ID=uuu;Password=zzz;";
    // or an ODBC version
    //oracon.ConnectionString = "DSN=ddd; UID=uuu; PWD=zzz;";
    oracon.Open();

    Details:
    ======
    - Win2000SP3, MDAC 2.7 (previously 2.5, but the same problem), "MSDAORA.1"
    OLE DB provider, Oracle 9.2 client.

    - IIS runs the script under the same (my own network) account as used from
    the command line. So, this ought not be an access rights related problem.

    - The error number is 0x80040e22:
    I put MSDAORA.1 as a component into the Component Server, and the following
    error (both in the OLEDB and ODBC version) was returned from IIS (instead of
    hanging):
    "Microsoft OLE DB Service Components error 80040e22
    (Non-NULL controlling IUnknown was specified, and
    either the requested interface was not IUnknown, or the
    provider does not support COM aggregation.)"
    I have found no info about this error anywhere.

    - The ODBC trace log has 59 lines and looks like this (note the last two
    records):

    Processid:{A685 620-25c ENTER SQLAllocEnv
    HENV * 6B5062D4

    Processid:{A685 620-25c EXIT SQLAllocEnv with return code 0 (SQL_SUCCESS)
    HENV * 0x6B5062D4 ( 0x00a31540)

    Processid:{A685 620-25c ENTER SQLAllocConnect
    HENV 00A31540
    HDBC * 6B5062DC

    Processid:{A685 620-25c EXIT SQLAllocConnect with return code 0
    (SQL_SUCCESS)
    HENV 00A31540
    HDBC * 0x6B5062DC ( 0x00a315e8)

    Processid:{A685 620-25c ENTER SQLAllocHandle
    SQLSMALLINT 1 <SQL_HANDLE_ENV>
    SQLHANDLE 00000000
    SQLHANDLE * 6B5062D8

    Processid:{A685 620-25c EXIT SQLAllocHandle with return code 0
    (SQL_SUCCESS)
    SQLSMALLINT 1 <SQL_HANDLE_ENV>
    SQLHANDLE 00000000
    SQLHANDLE * 0x6B5062D8 ( 0x00a316f0)

    Processid:{A685 620-25c ENTER SQLSetEnvAttr
    SQLHENV 00A316F0
    SQLINTEGER 200 <SQL_ATTR_ODBC_VERSION>
    SQLPOINTER 0x00000003
    SQLINTEGER -6

    Processid:{A685 620-25c EXIT SQLSetEnvAttr with return code 0
    (SQL_SUCCESS)
    SQLHENV 00A316F0
    SQLINTEGER 200 <SQL_ATTR_ODBC_VERSION>
    SQLPOINTER 0x00000003 (BADMEM)
    SQLINTEGER -6

    Processid:{A685 620-25c ENTER SQLAllocHandle
    SQLSMALLINT 2 <SQL_HANDLE_DBC>
    SQLHANDLE 00A316F0
    SQLHANDLE * 6B5062E0

    Processid:{A685 620-25c EXIT SQLAllocHandle with return code 0
    (SQL_SUCCESS)
    SQLSMALLINT 2 <SQL_HANDLE_DBC>
    SQLHANDLE 00A316F0
    SQLHANDLE * 0x6B5062E0 ( 0x00a31798)

    Processid:{A685 620-25c ENTER SQLSetEnvAttr
    SQLHENV 00000000
    SQLINTEGER 201 <unknown>
    SQLPOINTER [Unknown attribute 201]
    SQLINTEGER 0

    Processid:{A685 620-25c EXIT SQLSetEnvAttr with return code 0
    (SQL_SUCCESS)
    SQLHENV 00000000
    SQLINTEGER 201 <unknown>
    SQLPOINTER [Unknown attribute 201]
    SQLINTEGER 0



    Martin Plechsmid Guest

  2. Similar Questions and Discussions

    1. #40544 [NEW]: PostgreSQL connection hangs after die()
      From: kees at tweakers dot net Operating system: Linux (Debian) PHP version: 5.2.1 PHP Bug Type: PostgreSQL related Bug...
    2. Static shared data connection provider?
      I like the drag-and-drop accessibility of dragging a table to a Web Forms designer and seeing a SqlDataAdapter automatically created for me.. being...
    3. ConnectionTimeout Property of ADODB.Connection object using Informix Provider
      Hi, I am trying to determine why the ConnectionTimeout property of the ADODB.Connection object (coded in ASP) is not working with my Informix...
    4. Microsoft provider does not work with Oracle DB connection
      I have an ASP.Net application that connects to an Oracle 8.1.7 database. If I use the Microsoft provider MSDAORA the connection fails every time....
    5. Email From ASP Using ISP Provider(Dial Up Connection)
      Hi, I would like to send a Generic Email to 50 people,but condition is that user should see only his email address in the To Field. So I...
  3. #2

    Default IIS hangs when openning a connection w MSDAORA provider (0x80040e22)

    Martin,

    I've not done anything with Oracle, but when I use ADO for
    Access/SQL, etc. I use a slightly different syntax than
    you have. I don't know if that's the issue but it's worth
    a shot.

    It looks like you are using JScript - I use VBscript but
    the syntax is similiar according to my reference.

    1. I don't think the "new" keyword is required.
    I.E. var oracon = ActiveXObject("ADODB.Connection");

    2. I use server.createobject instead of ActiveXObject
    I.E. var oracon = Server.CreateObject("ADODB.Connection")

    3. I typically store the connection string in a variable
    and include it in the open command.
    I.E. var szConn = "Provider=MSDAORA;"
    + "Data Source=sss;"
    + "User ID=uuu;"
    + "Password=zzz;";
    oraconn.open(szConn)



    So, your code would look like this:

    var oracon = Server.CreateObject("ADODB.Connection")
    I.E. var szConn = "Provider=MSDAORA;"
    + "Data Source=sss;"
    + "User ID=uuu;"
    + "Password=zzz;";
    oraconn.open(szConn)


    Try that and see if it solves the problem.

    HTH
    John







    >-----Original Message-----
    >Hello.
    >
    >The script below opens an ADO connection to an Oracle DB.
    When run from the
    >command line (cscript), it works. But when run from an
    ASP page, the IIS
    >hangs during the "oracon.Open()" command (details below).
    >I've done further investigation (see below), but am
    unable to find a
    >solution. Can anyone help me?
    >
    >Thanks,
    > Martin.
    >
    >var oracon = new ActiveXObject("ADODB.Connection");
    >oracon.ConnectionString = "Provider=MSDAORA;"
    > +"Data Source=sss; User
    ID=uuu;Password=zzz;";
    >// or an ODBC version
    >//oracon.ConnectionString = "DSN=ddd; UID=uuu; PWD=zzz;";
    >oracon.Open();
    >
    >Details:
    >======
    > - Win2000SP3, MDAC 2.7 (previously 2.5, but the same
    problem), "MSDAORA.1"
    >OLE DB provider, Oracle 9.2 client.
    >
    > - IIS runs the script under the same (my own network)
    account as used from
    >the command line. So, this ought not be an access rights
    related problem.
    >
    > - The error number is 0x80040e22:
    >I put MSDAORA.1 as a component into the Component Server,
    and the following
    >error (both in the OLEDB and ODBC version) was returned
    from IIS (instead of
    >hanging):
    > "Microsoft OLE DB Service Components error
    80040e22
    > (Non-NULL controlling IUnknown was specified, and
    > either the requested interface was not IUnknown,
    or the
    > provider does not support COM aggregation.)"
    >I have found no info about this error anywhere.
    >
    > - The ODBC trace log has 59 lines and looks like this
    (note the last two
    >records):
    >
    >Processid:{A685 620-25c ENTER SQLAllocEnv
    > HENV * 6B5062D4
    >
    >Processid:{A685 620-25c EXIT SQLAllocEnv with return
    code 0 (SQL_SUCCESS)
    > HENV * 0x6B5062D4 ( 0x00a31540)
    >
    >Processid:{A685 620-25c ENTER SQLAllocConnect
    > HENV 00A31540
    > HDBC * 6B5062DC
    >
    >Processid:{A685 620-25c EXIT SQLAllocConnect with
    return code 0
    >(SQL_SUCCESS)
    > HENV 00A31540
    > HDBC * 0x6B5062DC ( 0x00a315e8)
    >
    >Processid:{A685 620-25c ENTER SQLAllocHandle
    > SQLSMALLINT 1 <SQL_HANDLE_ENV>
    > SQLHANDLE 00000000
    > SQLHANDLE * 6B5062D8
    >
    >Processid:{A685 620-25c EXIT SQLAllocHandle with return
    code 0
    >(SQL_SUCCESS)
    > SQLSMALLINT 1 <SQL_HANDLE_ENV>
    > SQLHANDLE 00000000
    > SQLHANDLE * 0x6B5062D8 ( 0x00a316f0)
    >
    >Processid:{A685 620-25c ENTER SQLSetEnvAttr
    > SQLHENV 00A316F0
    > SQLINTEGER 200 <SQL_ATTR_ODBC_VERSION>
    > SQLPOINTER 0x00000003
    > SQLINTEGER -6
    >
    >Processid:{A685 620-25c EXIT SQLSetEnvAttr with return
    code 0
    >(SQL_SUCCESS)
    > SQLHENV 00A316F0
    > SQLINTEGER 200 <SQL_ATTR_ODBC_VERSION>
    > SQLPOINTER 0x00000003 (BADMEM)
    > SQLINTEGER -6
    >
    >Processid:{A685 620-25c ENTER SQLAllocHandle
    > SQLSMALLINT 2 <SQL_HANDLE_DBC>
    > SQLHANDLE 00A316F0
    > SQLHANDLE * 6B5062E0
    >
    >Processid:{A685 620-25c EXIT SQLAllocHandle with return
    code 0
    >(SQL_SUCCESS)
    > SQLSMALLINT 2 <SQL_HANDLE_DBC>
    > SQLHANDLE 00A316F0
    > SQLHANDLE * 0x6B5062E0 ( 0x00a31798)
    >
    >Processid:{A685 620-25c ENTER SQLSetEnvAttr
    > SQLHENV 00000000
    > SQLINTEGER 201 <unknown>
    > SQLPOINTER [Unknown attribute 201]
    > SQLINTEGER 0
    >
    >Processid:{A685 620-25c EXIT SQLSetEnvAttr with return
    code 0
    >(SQL_SUCCESS)
    > SQLHENV 00000000
    > SQLINTEGER 201 <unknown>
    > SQLPOINTER [Unknown attribute 201]
    > SQLINTEGER 0
    >
    >
    >
    >.
    >
    John Beschler Guest

  4. #3

    Default It's a bug

    > var oracon = Server.CreateObject("ADODB.Connection")
    > I.E. var szConn = "Provider=MSDAORA;"
    > + "Data Source=sss;"
    > + "User ID=uuu;"
    > + "Password=zzz;";
    > oraconn.open(szConn)
    No, it's still the same. Thanks for the try.

    Now, I'm almost sure that this is a bug in the Microsoft MSDAORA provider.
    I've installed the Oracle OraOLEDB provider and the code works.
    Nevertheless, I'd like MSDAORA get working too, OraOLEDB might have other
    problems.

    Martin.



    Martin Plechsmid Guest

  5. #4

    Default It's a bug

    You didn't 'really' expect MS to deliver a bugfree driver
    for a competitors product, now did you?

    (:)


    >-----Original Message-----
    >> var oracon = Server.CreateObject("ADODB.Connection")
    >> I.E. var szConn = "Provider=MSDAORA;"
    >> + "Data Source=sss;"
    >> + "User ID=uuu;"
    >> + "Password=zzz;";
    >> oraconn.open(szConn)
    >
    >No, it's still the same. Thanks for the try.
    >
    >Now, I'm almost sure that this is a bug in the Microsoft
    MSDAORA provider.
    >I've installed the Oracle OraOLEDB provider and the code
    works.
    >Nevertheless, I'd like MSDAORA get working too, OraOLEDB
    might have other
    >problems.
    >
    > Martin.
    >
    >
    >
    >.
    >
    John Beschler Guest

Posting Permissions

  • You may not post new threads
  • You may post replies
  • You may not post attachments
  • You may not edit your posts

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139