您的位置:首页 > 数据库 > MySQL

6.3.1版mysql.data.dll的一个Bug

2012-07-30 17:05 429 查看
今天测出了mysql.data.dll 版本6.3.1的bug。text类型的数据,长度超过一定长度时,逻辑上的错误,造成MySql.Data.MySqlClient.MySqlPacket.ReadString(Int64 length)中的length变量保持为初值-1,再调System.IO.MemoryStream.Read(Byte[] buffer, Int32 offset, Int32 count)时count为-1出错。

经测试,最新的6.5.4修复了这个Bug。

bug如下。

[类型] ArgumentOutOfRangeException

[Message] 要求非负数。

参数名: count

[StackTrace]

在 System.IO.MemoryStream.Read(Byte[] buffer, Int32 offset, Int32 count)

在 MySql.Data.MySqlClient.MySqlPacket.ReadString(Int64 length)

在 MySql.Data.Types.MySqlString.MySql.Data.Types.IMySqlValue.ReadValue(MySqlPacket packet, Int64 length, Boolean nullVal)

在 MySql.Data.MySqlClient.NativeDriver.ReadColumnValue(Int32 index, MySqlField field, IMySqlValue valObject)

在 MySql.Data.MySqlClient.ResultSet.get_Item(Int32 index)

在 MySql.Data.MySqlClient.MySqlDataReader.GetFieldValue(Int32 index, Boolean checkNull)

在 MySql.Data.MySqlClient.MySqlDataReader.GetValue(Int32 i)

在 MySql.Data.MySqlClient.MySqlDataReader.GetValues(Object[] values)

在 System.Data.ProviderBase.DataReaderContainer.CommonLanguageSubsetDataReader.GetValues(Object[] values)

在 System.Data.ProviderBase.SchemaMapping.LoadDataRow()

在 System.Data.Common.DataAdapter.FillLoadDataRow(SchemaMapping mapping)

在 System.Data.Common.DataAdapter.FillFromReader(DataSet dataset, DataTable datatable, String srcTable, DataReaderContainer dataReader, Int32 startRecord, Int32 maxRecords, DataColumn parentChapterColumn, Object parentChapterValue)

在 System.Data.Common.DataAdapter.Fill(DataSet dataSet, String srcTable, IDataReader dataReader, Int32 startRecord, Int32 maxRecords)

在 System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)

在 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)

在 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: