Bug #94733 Cannot update a field to an empty string with X DevAPI
Submitted: 21 Mar 2019 8:13 Modified: 21 Mar 2019 9:47
Reporter: Wheeler Tse Email Updates:
Status: Verified Impact on me:
Category:Connector / NET Severity:S2 (Serious)
Version:8.0.15 OS:Microsoft Windows (Windows 10)
Assigned to: CPU Architecture:x86
Tags: X DevAPI

[21 Mar 2019 8:13] Wheeler Tse
We cannot update a field to an empty string with X DevAPI. And, if we try to do this, it will return us a general exception - "Parse error unserializing protobuf message".

How to repeat:
For Database
1. create a schema, and create a new table named "test" with below structure
   `id` int(11) NOT NULL AUTO_INCREMENT,
   `name` varchar(45) NOT NULL,

For C# code
1. create an ASP.NET core project (in my case used core 2.2)
   Note: it can be repeat in a .NET console project with .NET framework
2. include MySQL.Data (version 8.0.15) through NuGet
3. writing bellow code and run it
   var client = MySQLX.GetClient(@"server=***;uid=***;pwd=***;database=***;", new
       pooling = new { Enabled = true, MaxSize = 100, MaxIdleTime = 30000, QueueTimeout = 10000 }
   using (var session = client.GetSession())
       var table = session.GetCurrentSchema().GetTable("test");
       var statement = table.Insert("name").Values(string.Empty);
       var result = statement.Execute();
[21 Mar 2019 9:47] MySQL Verification Team
Hello Wheeler Tse,

Thank you for the report.