You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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
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.
Submitted by: Marc Bettex (mbettex)
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.
Commits: 8f857ac
The text was updated successfully, but these errors were encountered: