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 Firebird-net-provider@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/firebird-net-provider