System.Data.OracleClient.OracleException: ORA-01041

L

luke_airig

..NET Framework version: 1.1.4322.2032
Oracle 9i version: 9.2.0.5.0

I am a developer supporting a C# .NET application accessing an Oracle
9i database using Microsoft's System.Data.OracleClient.dll with a
2003/2/21 file timestamp.

The application is bombing with Oracle error ORA-01041. Once the error
occurs no other users are able to login to the application.

Here are exception details:

Exception Details: System.Data.OracleClient.OracleException:
ORA-01041: internal error. hostdef extension doesn't exist

Source Error:

An unhandled exception was generated during the execution of the
current web request. Information regarding the origin and location of
the exception can be identified using the exception stack trace
below.

Stack Trace:

[OracleException: ORA-01041: internal error. hostdef extension
doesn't exist ]

System.Data.OracleClient.OracleInternalConnection.get_ServerVersion()
+592

System.Data.OracleClient.OracleConnection.get_ServerVersionNumber() +31

System.Data.OracleClient.OracleConnection.get_ServerVersionAtLeastOracle8i()
+5

System.Data.OracleClient.OracleConnection.OpenInternal(OracleConnectionString
parsedConnectionString, Object transact) +600
System.Data.OracleClient.OracleConnection.Open() +32
PostFunding.DataAccess.DataAccessor.Open() +85
PostFunding.DataAccess.DataAccessor.CreateCommand(String
pi_strQueryName, OracleParameter[] pi_objOracleParameter) +24
PostFunding.DataAccess.DataAccessor.ExecuteScalar(String
pi_strQueryName) +27
LoginDAL.LoginCheck.AuthorizeUserforApplication(String struserID)
+107
Web.Common.RoleChange.Page_Load(Object sender, EventArgs e) +469
System.Web.UI.Control.OnLoad(EventArgs e) +67
System.Web.UI.Control.LoadRecursive() +35
System.Web.UI.Page.ProcessRequestMain() +750

Version Information: Microsoft .NET Framework Version:1.1.4322.2032;
ASP.NET Version:1.1.4322.2032


I've googled around and this appears to be a known issue with MS's dll
with no apparent solution from either MS or Oracle.

According to our DBA hung processes are left behind in the database as
a result of the microsoft OLE driver that makes and breaks the
connections not cleaning up the spawned connections. Various things
have been tried in the past but the problem still remains.

Here are the web.config connection parameters:

<add key="AppName.DataAccess.ConnectionString"
value="Data Source=DB.WORLD;User Id=APPNAME;Password=APPPW" />

<add key="ConnectionString"
value="Data Source=DB.WORLD;User Id=APPNAME;Password=APPPW; Min Pool
Size=1;Max Pool Size=3;Pooling='true'" />


Can anyone recommend a solution/workaround, perhaps some magical
connection parameter/parameter combo, direct me to a link to a newer MS
System.Data.OracleClient.dll driver or patch (I've tried to find it on
the msdn web site but no luck so far.) or recommend some other
solution?

TIA

Luke
 
M

Matt Noonan

Luke,

I have a couple of apps that have been running on Oracle 9i for a few years
now, and I have to say I have never seen this problem. While not exactly the
same as yours, my setup is:

VB.NET
MS Enterprise Library June 2005 release
Oracle 9i

I looked at my System.Data.OracleClient.dll file, and mine has a timestamp
of 7/15/2004, so I wonder if that has something to do with it. I also do not
use the pool settings in the connection string as you do.

I guess I would pursue getting the updated OracleClient DLL as a first
course of action. After that, I would say to try implementing the Enterprise
Library and see if that fixes the problem.
 
G

Glenn

Luke

I suppose you better check with your DBA first, but try setting the
SQLNET.AUTHENTICATION_SERVICES to NONE in the sqlnet.ora file.

HTH

Glenn

.NET Framework version: 1.1.4322.2032
Oracle 9i version: 9.2.0.5.0

I am a developer supporting a C# .NET application accessing an Oracle
9i database using Microsoft's System.Data.OracleClient.dll with a
2003/2/21 file timestamp.

The application is bombing with Oracle error ORA-01041. Once the error
occurs no other users are able to login to the application.

Here are exception details:

Exception Details: System.Data.OracleClient.OracleException:
ORA-01041: internal error. hostdef extension doesn't exist

Source Error:

An unhandled exception was generated during the execution of the
current web request. Information regarding the origin and location of
the exception can be identified using the exception stack trace
below.

Stack Trace:

[OracleException: ORA-01041: internal error. hostdef extension
doesn't exist ]

System.Data.OracleClient.OracleInternalConnection.get_ServerVersion()
+592

System.Data.OracleClient.OracleConnection.get_ServerVersionNumber() +31

System.Data.OracleClient.OracleConnection.get_ServerVersionAtLeastOracle8i()
+5

System.Data.OracleClient.OracleConnection.OpenInternal(OracleConnectionString
parsedConnectionString, Object transact) +600
System.Data.OracleClient.OracleConnection.Open() +32
PostFunding.DataAccess.DataAccessor.Open() +85
PostFunding.DataAccess.DataAccessor.CreateCommand(String
pi_strQueryName, OracleParameter[] pi_objOracleParameter) +24
PostFunding.DataAccess.DataAccessor.ExecuteScalar(String
pi_strQueryName) +27
LoginDAL.LoginCheck.AuthorizeUserforApplication(String struserID)
+107
Web.Common.RoleChange.Page_Load(Object sender, EventArgs e) +469
System.Web.UI.Control.OnLoad(EventArgs e) +67
System.Web.UI.Control.LoadRecursive() +35
System.Web.UI.Page.ProcessRequestMain() +750

Version Information: Microsoft .NET Framework Version:1.1.4322.2032;
ASP.NET Version:1.1.4322.2032


I've googled around and this appears to be a known issue with MS's dll
with no apparent solution from either MS or Oracle.

According to our DBA hung processes are left behind in the database as
a result of the microsoft OLE driver that makes and breaks the
connections not cleaning up the spawned connections. Various things
have been tried in the past but the problem still remains.

Here are the web.config connection parameters:

<add key="AppName.DataAccess.ConnectionString"
value="Data Source=DB.WORLD;User Id=APPNAME;Password=APPPW" />

<add key="ConnectionString"
value="Data Source=DB.WORLD;User Id=APPNAME;Password=APPPW; Min Pool
Size=1;Max Pool Size=3;Pooling='true'" />


Can anyone recommend a solution/workaround, perhaps some magical
connection parameter/parameter combo, direct me to a link to a newer MS
System.Data.OracleClient.dll driver or patch (I've tried to find it on
the msdn web site but no luck so far.) or recommend some other
solution?

TIA

Luke
 
Top