|
View:
New views
3 Messages
—
Rating Filter:
Alert me
|
|
|
Oracle/OCI Thread Abort?Greetings! I'm running mono 1.2.4 that was compiled from source on OpenSuSE 10.2. I have the Oracle Instant Client version 10.2.0.3. I am getting the following exceptions after calling several stored procedures in Oracle. It will get thrown after 10 or so sproc calls. I'm thinking it might be an issue with OCI not being thread-safe. I've tried with connection pooling on and off with the same result. I'm running this from a console app. I'd appreciate any ideas.
Thanks, Jason WITH CONN. POOLING: trying to GetStatementHandle connectionState=Open connectionString=Data Source=FOO;User Id=BAR;Pooling=true;Min Pool Size=10;Max Pool Size=50;Connection Lifetime=20;; connected=True Unhandled Exception: TrueBaseline.DataAccess.DAL.Facades.DALException: Unable to derive parameters. ---> System.Exception: Could not allocate new OCI Handle of type Statement at System.Data.OracleClient.Oci.OciHandle.Allocate (OciHandleType type) [0x00000] at System.Data.OracleClient.OracleCommand.GetStatementHandle () [0x00000] at System.Data.OracleClient.OracleCommand.ExecuteNonQuery () [0x00000] at (wrapper remoting-invoke-with-check) System.Data.OracleClient.OracleCommand:ExecuteNonQuery () at System.Data.OracleClient.OracleCommand.ResolveName (System.String nameToResolve, System.String& schema, System.String& part1, System.String& part2, System.String& dblink) [0x00000] at System.Data.OracleClient.OracleCommand.DeriveParametersFromStoredProcedure (System.String sproc_name) [0x00000] at System.Data.OracleClient.OracleCommand.DeriveParameters () [0x00000] at (wrapper remoting-invoke-with-check) System.Data.OracleClient.OracleCommand:DeriveParameters () at System.Data.OracleClient.OracleCommandBuilder.DeriveParameters (System.Data.OracleClient.OracleCommand command) [0x00000] at TrueBaseline.DataAccess.DAL.Facades.OracleClient.Command.set_CommandType (CommandType value) [0x00000] --- End of inner exception stack trace --- at TrueBaseline.DataAccess.DAL.Facades.OracleClient.Command.set_CommandType (CommandType value) [0x00000] at TrueBaseline.DataAccess.DataApplicationBlock.TrueOmf.DataAccessLayer.OracleClient.StoredProcedureProvider.GetCommandWrapper (IDatabase database, System.String commandName, Boolean useStoredProcedure) [0x00000] at TrueBaseline.DataAccess.DataApplicationBlock.TrueOmf.DataAccessLayer.OracleClient.OracleEventMessageFunctionalObjectMethodMapProviderBase.GetBySolutionDomainIDName (ITransactionManager transactionManager, Guid solutionDomainID, System.String name, Int32 start, Int32 pageLength, System.Int32& count) [0x00000] at TrueBaseline.DataAccess.DataApplicationBlock.TrueOmf.DataAccessLayer.Bases.EventMessageFunctionalObjectMethodMapProviderBaseCore.GetBySolutionDomainIDName (Guid solutionDomainID, System.String name, Int32 start, Int32 pageLength, System.Int32& count) [0x00000] at TrueBaseline.DataAccess.DataApplicationBlock.TrueOmf.DataAccessLayer.Bases.EventMessageFunctionalObjectMethodMapProviderBaseCore.GetBySolutionDomainIDName (Guid solutionDomainID, System.String name) [0x00000] at testoracle.MainClass.Main (System.String[] args) [0x00000] WITHOUT CONN POOLING: trying to GetStatementHandle connectionState=Open connectionString=Data Source=FOO;User Id=BAR;Pooling=false;Connection Lifetime=20;; connected=True mono [0x8156dbf] mono [0x8120e48] [0xb7eef440] /usr/lib/libclntsh.so(OCIErrorGet+0xa1) [0xb65407fb] [0xb167822f] [0xb16781c5] [0xb167807c] [0xb1677fd2] [0xb1677ed9] [0xb1677c38] [0xb197958c] [0xb1979531] [0xb1677b91] [0xb17873e9] [0xb197c45b] mono [0x816c965] mono [0x8111541] mono [0x816cb19] mono [0x80eb040] mono [0x8100b02] mono [0x8113d35] /lib/libpthread.so.0 [0xb7e15112] /lib/libc.so.6(clone+0x5e) [0xb7d7b2ee] got StatementHandle hasRows=True parameter count: 3 Debug info from gdb: Using host libthread_db library "/lib/libthread_db.so.1". [Thread debugging using libthread_db enabled] [New Thread -1211385120 (LWP 9900)] [New Thread -1219863664 (LWP 9902)] [New Thread -1219781744 (LWP 9901)] 0xb7eef410 in ?? () 3 Thread -1219781744 (LWP 9901) 0xb7eef410 in ?? () 2 Thread -1219863664 (LWP 9902) 0xb7eef410 in ?? () 1 Thread -1211385120 (LWP 9900) 0xb7eef410 in ?? () Thread 3 (Thread -1219781744 (LWP 9901)): #0 0xb7eef410 in ?? () #1 0xb74b93a8 in ?? () #2 0x081f8ff4 in ?? () #3 0x00000000 in ?? () Thread 2 (Thread -1219863664 (LWP 9902)): #0 0xb7eef410 in ?? () #1 0xb74a4338 in ?? () #2 0x00000000 in ?? () Thread 1 (Thread -1211385120 (LWP 9900)): #0 0xb7eef410 in ?? () #1 0xbfe91d38 in ?? () #2 0x00000810 in ?? () #3 0x0873a5c6 in ?? () #4 0xb7e1c02b in __read_nocancel () from /lib/libpthread.so.0 #5 0xb676080f in snttread () from /usr/lib/libclntsh.so #6 0xb675dce1 in nttrd () from /usr/lib/libclntsh.so #7 0xb66b0bc0 in nsprecv () from /usr/lib/libclntsh.so #8 0xb66b4c8b in nsrdr () from /usr/lib/libclntsh.so #9 0xb66943ee in nsdo () from /usr/lib/libclntsh.so #10 0xb6693e97 in nsbrecv () from /usr/lib/libclntsh.so #11 0xb66c8567 in nioqrc () from /usr/lib/libclntsh.so #12 0xb67eacbf in ttcdrv () from /usr/lib/libclntsh.so #13 0xb66cfbc8 in nioqwa () from /usr/lib/libclntsh.so #14 0xb653b618 in upirtrc () from /usr/lib/libclntsh.so #15 0xb64b05f6 in kpurcsc () from /usr/lib/libclntsh.so #16 0xb64648b8 in kpuexecv8 () from /usr/lib/libclntsh.so #17 0xb6466ec4 in kpuexec () from /usr/lib/libclntsh.so #18 0xb65401b6 in OCIStmtExecute () from /usr/lib/libclntsh.so #19 0xb1ad2f8a in ?? () #20 0x087178b0 in ?? () #21 0x0872d354 in ?? () #22 0x08716c44 in ?? () #23 0x00000000 in ?? () #0 0xb7eef410 in ?? () ================================================================= Got a SIGSEGV while executing native code. This usually indicates a fatal error in the mono runtime or one of the native libraries used by your application. ================================================================= Aborted |
|
|
Re: Oracle/OCI Thread Abort?Hi,
Probably you can file this as a bug and assign to skolima@... Mono Oracle Client maintainer. Thanks Nagappan -- -- Nagappan A <anagappan@...> Linux Desktop Testing Project - http://ldtp.freedesktop.org http://nagappanal.blogspot.com Novell, Inc. SUSE* Linux Enterprise 10 Your Linux is ready* http://www.novell.com/linux >>> On 8/2/2007 at 4:04 AM, in message <11955212.post@...>, cabes <jason@...> wrote: > Greetings! I'm running mono 1.2.4 that was compiled from source on OpenSuSE > 10.2. I have the Oracle Instant Client version 10.2.0.3. I am getting the > following exceptions after calling several stored procedures in Oracle. It > will get thrown after 10 or so sproc calls. I'm thinking it might be an > issue with OCI not being thread-safe. I've tried with connection pooling on > and off with the same result. I'm running this from a console app. I'd > appreciate any ideas. > > Thanks, > Jason > > > WITH CONN. POOLING: > > trying to GetStatementHandle > connectionState=Open > connectionString=Data Source=FOO;User Id=BAR;Pooling=true;Min Pool > Size=10;Max Pool Size=50;Connection Lifetime=20;; > connected=True > > Unhandled Exception: > Unable to derive parameters. ---> System.Exception: Could not allocate new > OCI Handle of type Statement > at System.Data.OracleClient.Oci.OciHandle.Allocate (OciHandleType type) > [0x00000] > at System.Data.OracleClient.OracleCommand.GetStatementHandle () [0x00000] > at System.Data.OracleClient.OracleCommand.ExecuteNonQuery () [0x00000] > at (wrapper remoting-invoke-with-check) > System.Data.OracleClient.OracleCommand:ExecuteNonQuery () > at System.Data.OracleClient.OracleCommand.ResolveName (System.String > nameToResolve, System.String& schema, System.String& part1, System.String& > part2, System.String& dblink) [0x00000] > at > System.Data.OracleClient.OracleCommand.DeriveParametersFromStoredProcedure > (System.String sproc_name) [0x00000] > at System.Data.OracleClient.OracleCommand.DeriveParameters () [0x00000] > at (wrapper remoting-invoke-with-check) > System.Data.OracleClient.OracleCommand:DeriveParameters () > at System.Data.OracleClient.OracleCommandBuilder.DeriveParameters > (System.Data.OracleClient.OracleCommand command) [0x00000] > at > TrueBaseline.DataAccess.DAL.Facades.OracleClient.Command.set_CommandType > (CommandType value) [0x00000] --- End of inner exception stack trace --- > > at > TrueBaseline.DataAccess.DAL.Facades.OracleClient.Command.set_CommandType > (CommandType value) [0x00000] > at > TrueBaseline.DataAccess.DataApplicationBlock.TrueOmf.DataAccessLayer.OracleC > lient.StoredProcedureProvider.GetCommandWrapper > (IDatabase database, System.String commandName, Boolean useStoredProcedure) > [0x00000] > at > TrueBaseline.DataAccess.DataApplicationBlock.TrueOmf.DataAccessLayer.OracleC > lient.OracleEventMessageFunctionalObjectMethodMapProviderBase.GetBySolutionDo > mainIDName > (ITransactionManager transactionManager, Guid solutionDomainID, > System.String name, Int32 start, Int32 pageLength, System.Int32& count) > [0x00000] > at > TrueBaseline.DataAccess.DataApplicationBlock.TrueOmf.DataAccessLayer.Bases.E > ventMessageFunctionalObjectMethodMapProviderBaseCore.GetBySolutionDomainIDNam > e > (Guid solutionDomainID, System.String name, Int32 start, Int32 pageLength, > System.Int32& count) [0x00000] > at > TrueBaseline.DataAccess.DataApplicationBlock.TrueOmf.DataAccessLayer.Bases.E > ventMessageFunctionalObjectMethodMapProviderBaseCore.GetBySolutionDomainIDNam > e > (Guid solutionDomainID, System.String name) [0x00000] > at testoracle.MainClass.Main (System.String[] args) [0x00000] > > > > WITHOUT CONN POOLING: > > trying to GetStatementHandle > connectionState=Open > connectionString=Data Source=FOO;User > Lifetime=20;; > connected=True mono [0x8156dbf] > mono [0x8120e48] > [0xb7eef440] > /usr/lib/libclntsh.so(OCIErrorGet+0xa1) [0xb65407fb] > [0xb167822f] > [0xb16781c5] > [0xb167807c] > [0xb1677fd2] > [0xb1677ed9] > [0xb1677c38] > [0xb197958c] > [0xb1979531] > [0xb1677b91] > [0xb17873e9] > [0xb197c45b] > mono [0x816c965] > mono [0x8111541] > mono [0x816cb19] > mono [0x80eb040] > mono [0x8100b02] > mono [0x8113d35] > /lib/libpthread.so.0 [0xb7e15112] > /lib/libc.so.6(clone+0x5e) [0xb7d7b2ee] > > got StatementHandle > hasRows=True > parameter count: 3 > > Debug info from gdb: > > Using host libthread_db library "/lib/libthread_db.so.1". > [Thread debugging using libthread_db enabled] > [New Thread -1211385120 (LWP 9900)] > [New Thread -1219863664 (LWP 9902)] > [New Thread -1219781744 (LWP 9901)] > 0xb7eef410 in ?? () > 3 Thread -1219781744 (LWP 9901) 0xb7eef410 in ?? () > 2 Thread -1219863664 (LWP 9902) 0xb7eef410 in ?? () > 1 Thread -1211385120 (LWP 9900) 0xb7eef410 in ?? () > > Thread 3 (Thread -1219781744 (LWP 9901)): > #0 0xb7eef410 in ?? () > #1 0xb74b93a8 in ?? () > #2 0x081f8ff4 in ?? () > #3 0x00000000 in ?? () > > Thread 2 (Thread -1219863664 (LWP 9902)): > #0 0xb7eef410 in ?? () > #1 0xb74a4338 in ?? () > #2 0x00000000 in ?? () > > Thread 1 (Thread -1211385120 (LWP 9900)): > #0 0xb7eef410 in ?? () > #1 0xbfe91d38 in ?? () > #2 0x00000810 in ?? () > #3 0x0873a5c6 in ?? () > #4 0xb7e1c02b in __read_nocancel () from /lib/libpthread.so.0 > #5 0xb676080f in snttread () from /usr/lib/libclntsh.so > #6 0xb675dce1 in nttrd () from /usr/lib/libclntsh.so > #7 0xb66b0bc0 in nsprecv () from /usr/lib/libclntsh.so > #8 0xb66b4c8b in nsrdr () from /usr/lib/libclntsh.so > #9 0xb66943ee in nsdo () from /usr/lib/libclntsh.so > #10 0xb6693e97 in nsbrecv () from /usr/lib/libclntsh.so > #11 0xb66c8567 in nioqrc () from /usr/lib/libclntsh.so > #12 0xb67eacbf in ttcdrv () from /usr/lib/libclntsh.so > #13 0xb66cfbc8 in nioqwa () from /usr/lib/libclntsh.so > #14 0xb653b618 in upirtrc () from /usr/lib/libclntsh.so > #15 0xb64b05f6 in kpurcsc () from /usr/lib/libclntsh.so > #16 0xb64648b8 in kpuexecv8 () from /usr/lib/libclntsh.so > #17 0xb6466ec4 in kpuexec () from /usr/lib/libclntsh.so > #18 0xb65401b6 in OCIStmtExecute () from /usr/lib/libclntsh.so > #19 0xb1ad2f8a in ?? () > #20 0x087178b0 in ?? () > #21 0x0872d354 in ?? () > #22 0x08716c44 in ?? () > #23 0x00000000 in ?? () > #0 0xb7eef410 in ?? () > > > ================================================================= > Got a SIGSEGV while executing native code. This usually indicates > a fatal error in the mono runtime or one of the native libraries > used by your application. > ================================================================= > > Aborted Mono-list maillist - Mono-list@... http://lists.ximian.com/mailman/listinfo/mono-list |
|
|
Re: Oracle/OCI Thread Abort?I don't know the answer to OCI. However, I do know
the Oracle provider is NOT thread-safe. Is the oracle client provider in microsoft .net framework thread-safe? If yes, any recommendations on how to make the provider thread-safe? --- cabes <jason@...> wrote: > > Greetings! I'm running mono 1.2.4 that was compiled > from source on OpenSuSE > 10.2. I have the Oracle Instant Client version > 10.2.0.3. I am getting the > following exceptions after calling several stored > procedures in Oracle. It > will get thrown after 10 or so sproc calls. I'm > thinking it might be an > issue with OCI not being thread-safe. I've tried > with connection pooling on > and off with the same result. I'm running this from > a console app. I'd > appreciate any ideas. > > Thanks, > Jason > > > WITH CONN. POOLING: > > trying to GetStatementHandle > connectionState=Open > connectionString=Data Source=FOO;User > Id=BAR;Pooling=true;Min Pool > Size=10;Max Pool Size=50;Connection Lifetime=20;; > connected=True > > Unhandled Exception: > TrueBaseline.DataAccess.DAL.Facades.DALException: > Unable to derive parameters. ---> System.Exception: > Could not allocate new > OCI Handle of type Statement > at System.Data.OracleClient.Oci.OciHandle.Allocate > (OciHandleType type) > [0x00000] > at > > () [0x00000] > at > System.Data.OracleClient.OracleCommand.ExecuteNonQuery > () [0x00000] > at (wrapper remoting-invoke-with-check) > System.Data.OracleClient.OracleCommand:ExecuteNonQuery > () > at > System.Data.OracleClient.OracleCommand.ResolveName > (System.String > nameToResolve, System.String& schema, System.String& > part1, System.String& > part2, System.String& dblink) [0x00000] > at > System.Data.OracleClient.OracleCommand.DeriveParametersFromStoredProcedure > (System.String sproc_name) [0x00000] > at > System.Data.OracleClient.OracleCommand.DeriveParameters > () [0x00000] > at (wrapper remoting-invoke-with-check) > System.Data.OracleClient.OracleCommand:DeriveParameters > () > at > System.Data.OracleClient.OracleCommandBuilder.DeriveParameters > (System.Data.OracleClient.OracleCommand command) > [0x00000] > at > TrueBaseline.DataAccess.DAL.Facades.OracleClient.Command.set_CommandType > (CommandType value) [0x00000] --- End of inner > exception stack trace --- > > at > TrueBaseline.DataAccess.DAL.Facades.OracleClient.Command.set_CommandType > (CommandType value) [0x00000] > at > TrueBaseline.DataAccess.DataApplicationBlock.TrueOmf.DataAccessLayer.OracleClient.StoredProcedureProvider.GetCommandWrapper > (IDatabase database, System.String commandName, > Boolean useStoredProcedure) > [0x00000] > at > TrueBaseline.DataAccess.DataApplicationBlock.TrueOmf.DataAccessLayer.OracleClient.OracleEventMessageFunctionalObjectMethodMapProviderBase.GetBySolutionDomainIDName > (ITransactionManager transactionManager, Guid > solutionDomainID, > System.String name, Int32 start, Int32 pageLength, > System.Int32& count) > [0x00000] > at > TrueBaseline.DataAccess.DataApplicationBlock.TrueOmf.DataAccessLayer.Bases.EventMessageFunctionalObjectMethodMapProviderBaseCore.GetBySolutionDomainIDName > (Guid solutionDomainID, System.String name, Int32 > start, Int32 pageLength, > System.Int32& count) [0x00000] > at > TrueBaseline.DataAccess.DataApplicationBlock.TrueOmf.DataAccessLayer.Bases.EventMessageFunctionalObjectMethodMapProviderBaseCore.GetBySolutionDomainIDName > (Guid solutionDomainID, System.String name) > [0x00000] > at testoracle.MainClass.Main (System.String[] > args) [0x00000] > > > > WITHOUT CONN POOLING: > > trying to GetStatementHandle > connectionState=Open > connectionString=Data Source=FOO;User > Id=BAR;Pooling=false;Connection > Lifetime=20;; > connected=True mono [0x8156dbf] > mono [0x8120e48] > [0xb7eef440] > /usr/lib/libclntsh.so(OCIErrorGet+0xa1) > [0xb65407fb] > [0xb167822f] > [0xb16781c5] > [0xb167807c] > [0xb1677fd2] > [0xb1677ed9] > [0xb1677c38] > [0xb197958c] > [0xb1979531] > [0xb1677b91] > [0xb17873e9] > [0xb197c45b] > mono [0x816c965] > mono [0x8111541] > mono [0x816cb19] > mono [0x80eb040] > mono [0x8100b02] > mono [0x8113d35] > /lib/libpthread.so.0 [0xb7e15112] > /lib/libc.so.6(clone+0x5e) [0xb7d7b2ee] > > got StatementHandle > hasRows=True > parameter count: 3 > > Debug info from gdb: > > Using host libthread_db library > "/lib/libthread_db.so.1". > [Thread debugging using libthread_db enabled] > [New Thread -1211385120 (LWP 9900)] > [New Thread -1219863664 (LWP 9902)] > [New Thread -1219781744 (LWP 9901)] > 0xb7eef410 in ?? () > 3 Thread -1219781744 (LWP 9901) 0xb7eef410 in ?? > () > 2 Thread -1219863664 (LWP 9902) 0xb7eef410 in ?? > () > 1 Thread -1211385120 (LWP 9900) 0xb7eef410 in ?? > () > > Thread 3 (Thread -1219781744 (LWP 9901)): > #0 0xb7eef410 in ?? () > #1 0xb74b93a8 in ?? () > #2 0x081f8ff4 in ?? () > #3 0x00000000 in ?? () > > Thread 2 (Thread -1219863664 (LWP 9902)): > #0 0xb7eef410 in ?? () > #1 0xb74a4338 in ?? () > #2 0x00000000 in ?? () > > Thread 1 (Thread -1211385120 (LWP 9900)): > #0 0xb7eef410 in ?? () > #1 0xbfe91d38 in ?? () > #2 0x00000810 in ?? () > #3 0x0873a5c6 in ?? () > #4 0xb7e1c02b in __read_nocancel () from > /lib/libpthread.so.0 > #5 0xb676080f in snttread () from > /usr/lib/libclntsh.so > #6 0xb675dce1 in nttrd () from > /usr/lib/libclntsh.so > #7 0xb66b0bc0 in nsprecv () from > /usr/lib/libclntsh.so > #8 0xb66b4c8b in nsrdr () from > /usr/lib/libclntsh.so > #9 0xb66943ee in nsdo () from /usr/lib/libclntsh.so > #10 0xb6693e97 in nsbrecv () from > /usr/lib/libclntsh.so > #11 0xb66c8567 in nioqrc () from > /usr/lib/libclntsh.so > #12 0xb67eacbf in ttcdrv () from > /usr/lib/libclntsh.so > #13 0xb66cfbc8 in nioqwa () from > /usr/lib/libclntsh.so > #14 0xb653b618 in upirtrc () from > /usr/lib/libclntsh.so > #15 0xb64b05f6 in kpurcsc () from > /usr/lib/libclntsh.so > #16 0xb64648b8 in kpuexecv8 () from > /usr/lib/libclntsh.so > #17 0xb6466ec4 in kpuexec () from > /usr/lib/libclntsh.so > #18 0xb65401b6 in OCIStmtExecute () from > /usr/lib/libclntsh.so > #19 0xb1ad2f8a in ?? () > #20 0x087178b0 in ?? () > #21 0x0872d354 in ?? () > #22 0x08716c44 in ?? () > #23 0x00000000 in ?? () > #0 0xb7eef410 in ?? () > ____________________________________________________________________________________ Pinpoint customers who are looking for what you sell. http://searchmarketing.yahoo.com/ _______________________________________________ Mono-list maillist - Mono-list@... http://lists.ximian.com/mailman/listinfo/mono-list |
| Free embeddable forum powered by Nabble | Forum Help |