Bug with PgSqlDataAdapter Fill method in mono
Posted: Wed 12 Sep 2007 17:15
This may be a known bug, but one which I am experiencing.
If DbDataAdapter.Fill(DataTable dataTable) overloaded method of the PgSqlDataAdapter object is used, an exception occurs. The following is an example:
null key
Parameter name: key
at System.Collections.Hashtable.Find (System.Object key) [0x00000]
at System.Collections.Hashtable.Contains (System.Object key) [0x00000]
at System.Data.Common.DataTableMappingCollection.Contains (System.String value
) [0x00000]
at (wrapper remoting-invoke-with-check) System.Data.Common.DataTableMappingCol
lection:Contains (string)
at CoreLab.PostgreSql.PgSqlDataAdapter.a (System.Data.DataTable A_0, CoreLab.P
ostgreSql.PgSqlDataReader A_1, System.Data.DataSet A_2, System.String A_3, Int32
A_4, Int32 A_5) [0x00000]
at CoreLab.PostgreSql.PgSqlDataAdapter.a (System.Data.DataTable A_0, IDataRead
er A_1) [0x00000]
at CoreLab.PostgreSql.PgSqlDataAdapter.Fill (System.Data.DataTable table, IDat
aReader dataReader) [0x00000]
at System.Data.Common.DbDataAdapter.Fill (System.Data.DataTable dataTable, IDb
Command command, CommandBehavior behavior) [0x00000]
at System.Data.Common.DbDataAdapter.Fill (System.Data.DataTable dataTable) [0x
00000]
at (wrapper remoting-invoke-with-check) System.Data.Common.DbDataAdapter:Fill
(System.Data.DataTable)
at PryerMachine.DBConnPool.PgSqlDB.getDataTable (System.String PoolName, Syste
m.String SQL) [0x00000]
This problem does not occur when using the DbDataAdapter.Fill(DataSet dataSet) overload and can be used as a workaround.
This occurs with the version 3.20.16.0 of the PostgreSQLDirect.NET driver
running under mono 1.2.5
I have an example project using remoting that I can submit. I found this while trying to run our back end tier under mono using remoting, however it seems to occur in regular applications that don't use remoting as well.
This problem only occurs when using mono - The MS .NET runtime works fine with this method. I would suspect this is an issue with the mono implementation of the System.Data library that is causing this problem.
Thanks in advance for any insight and help
If DbDataAdapter.Fill(DataTable dataTable) overloaded method of the PgSqlDataAdapter object is used, an exception occurs. The following is an example:
null key
Parameter name: key
at System.Collections.Hashtable.Find (System.Object key) [0x00000]
at System.Collections.Hashtable.Contains (System.Object key) [0x00000]
at System.Data.Common.DataTableMappingCollection.Contains (System.String value
) [0x00000]
at (wrapper remoting-invoke-with-check) System.Data.Common.DataTableMappingCol
lection:Contains (string)
at CoreLab.PostgreSql.PgSqlDataAdapter.a (System.Data.DataTable A_0, CoreLab.P
ostgreSql.PgSqlDataReader A_1, System.Data.DataSet A_2, System.String A_3, Int32
A_4, Int32 A_5) [0x00000]
at CoreLab.PostgreSql.PgSqlDataAdapter.a (System.Data.DataTable A_0, IDataRead
er A_1) [0x00000]
at CoreLab.PostgreSql.PgSqlDataAdapter.Fill (System.Data.DataTable table, IDat
aReader dataReader) [0x00000]
at System.Data.Common.DbDataAdapter.Fill (System.Data.DataTable dataTable, IDb
Command command, CommandBehavior behavior) [0x00000]
at System.Data.Common.DbDataAdapter.Fill (System.Data.DataTable dataTable) [0x
00000]
at (wrapper remoting-invoke-with-check) System.Data.Common.DbDataAdapter:Fill
(System.Data.DataTable)
at PryerMachine.DBConnPool.PgSqlDB.getDataTable (System.String PoolName, Syste
m.String SQL) [0x00000]
This problem does not occur when using the DbDataAdapter.Fill(DataSet dataSet) overload and can be used as a workaround.
This occurs with the version 3.20.16.0 of the PostgreSQLDirect.NET driver
running under mono 1.2.5
I have an example project using remoting that I can submit. I found this while trying to run our back end tier under mono using remoting, however it seems to occur in regular applications that don't use remoting as well.
This problem only occurs when using mono - The MS .NET runtime works fine with this method. I would suspect this is an issue with the mono implementation of the System.Data library that is causing this problem.
Thanks in advance for any insight and help