Bug with PgSqlDataAdapter Fill method in mono

Discussion of open issues, suggestions and bugs regarding ADO.NET provider for PostgreSQL
Post Reply
phaggard
Posts: 5
Joined: Thu 09 Aug 2007 15:42

Bug with PgSqlDataAdapter Fill method in mono

Post by phaggard » 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

Alexey
Posts: 2756
Joined: Mon 13 Mar 2006 07:43

Post by Alexey » Thu 13 Sep 2007 11:12

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.
Please send it to the address provided in the Readme.txt file. Include the definitions of your database objects.

phaggard
Posts: 5
Joined: Thu 09 Aug 2007 15:42

Fill Method problem

Post by phaggard » Fri 21 Sep 2007 20:44

I had not had a chance to reply to your post as I did not receive any e-mail notification that you had replied as I apparently didn't check the 'Notify me' on my original post.

I will send along the test project ASAP. It actually requires no database object definitions of any kind or any specific database be scripted. The SQL being executed is a simple 'SELECT VERSION()' statement that can be executed against any database.

Alexey
Posts: 2756
Joined: Mon 13 Mar 2006 07:43

Post by Alexey » Mon 24 Sep 2007 13:30

We are investigating your project.
Look forward to hearing from me again.

SecureGen
Devart Team
Posts: 133
Joined: Thu 08 Sep 2005 06:27

Post by SecureGen » Thu 22 Nov 2007 17:58

We have fixed this problem for you.
Look forward to the next build.

Post Reply