Problem with the new table locking feature
------------------------------------------
Key: DNET-341
URL: http://tracker.firebirdsql.org/browse/DNET-341
Project: .NET Data provider
Issue Type: Bug
Components: Weekly Builds
Reporter: Marc Bettex
Assignee: Jiri Cincura
There is a problem with the new locking table feature introduced in the weekly
builds. When calling the FbConnection.GetSchema(...) method I got the following
exception
C:\Users\bettex\Documents\Marc\Projects\NETProvider\source\FirebirdSql\Data\FirebirdClient\FbTransaction.cs(474,
26) : FirebirdSql.Data.Common.TransactionParameterBuffer
BuildTpb(FirebirdSql.Data.FirebirdClient.FbTransactionOptions)
C:\Users\bettex\Documents\Marc\Projects\NETProvider\source\FirebirdSql\Data\FirebirdClient\FbTransaction.cs(437,
13) : FirebirdSql.Data.Common.TransactionParameterBuffer BuildTpb()
C:\Users\bettex\Documents\Marc\Projects\NETProvider\source\FirebirdSql\Data\FirebirdClient\FbTransaction.cs(363,
21) : Void BeginTransaction()
C:\Users\bettex\Documents\Marc\Projects\NETProvider\source\FirebirdSql\Data\FirebirdClient\FbCommand.cs(1153,
21) : Void Prepare(Boolean)
C:\Users\bettex\Documents\Marc\Projects\NETProvider\source\FirebirdSql\Data\FirebirdClient\FbCommand.cs(1215,
13) : Void ExecuteCommand(System.Data.CommandBehavior, Boolean)
C:\Users\bettex\Documents\Marc\Projects\NETProvider\source\FirebirdSql\Data\FirebirdClient\FbCommand.cs(559,
6) : FirebirdSql.Data.FirebirdClient.FbDataReader
ExecuteReader(System.Data.CommandBehavior)
C:\Users\bettex\Documents\Marc\Projects\NETProvider\source\FirebirdSql\Data\FirebirdClient\FbCommand.cs(659,
13) : System.Data.Common.DbDataReader
ExecuteDbDataReader(System.Data.CommandBehavior)
System.Data.IDataReader
System.Data.IDbCommand.ExecuteReader(System.Data.CommandBehavior)
Int32 FillInternal(System.Data.DataSet, System.Data.DataTable[], Int32, Int32,
System.String, System.Data.IDbCommand, System.Data.CommandBehavior)
Int32 Fill(System.Data.DataTable[], Int32, Int32, System.Data.IDbCommand,
System.Data.CommandBehavior)
Int32 Fill(System.Data.DataTable)
C:\Users\bettex\Documents\Marc\Projects\NETProvider\source\FirebirdSql\Data\Schema\FbSchema.cs(57,
17) : System.Data.DataTable
GetSchema(FirebirdSql.Data.FirebirdClient.FbConnection, System.String,
System.String[])
C:\Users\bettex\Documents\Marc\Projects\NETProvider\source\FirebirdSql\Data\Schema\FbSchemaFactory.cs(210,
13) : System.Data.DataTable
PrepareCollection(FirebirdSql.Data.FirebirdClient.FbConnection, System.String,
System.String[])
C:\Users\bettex\Documents\Marc\Projects\NETProvider\source\FirebirdSql\Data\Schema\FbSchemaFactory.cs(79,
21) : System.Data.DataTable
GetSchema(FirebirdSql.Data.FirebirdClient.FbConnection, System.String,
System.String[])
C:\Users\bettex\Documents\Marc\Projects\NETProvider\source\FirebirdSql\Data\FirebirdClient\FbConnectionInternal.cs(406,
13) : System.Data.DataTable GetSchema(System.String, System.String[])
C:\Users\bettex\Documents\Marc\Projects\NETProvider\source\FirebirdSql\Data\FirebirdClient\FbConnection.cs(468,
13) : System.Data.DataTable GetSchema(System.String, System.String[])
The dictionnary holding the parameters for the table locking was never set, to
it is null, and the foreach in FbTransation at line 474 throws a
NullReferenceException. I have fixed it on my machine by adding a constructor
to FbTransactionOptions that assignes an empty dictionnary to
FbTransactionOptions.LockTables.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
------------------------------------------------------------------------------
This SF.net email is sponsored by
Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev
_______________________________________________
Firebird-net-provider mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider