Character string causes a command timeout when `usecompression=true` in connection string
See original GitHub issueSteps to reproduce
- Create a sample ASP.NET 6 Core MVC Web App using the “Create a new project” wizard in Visual Studio 2022
- Add the following NuGet packages: Microsoft.EntityFrameworkCore.Tools (6.0.1), Pomelo.EntityFrameworkCore.MySql (6.0.1)
- Create a MariaDB database called “testdb”
- Use the DatabaseContext.cs code I’m including in this post for the DBContext class (make sure “usecompression=true” is present in the connection string, this is important)
- Use the Program.cs code I’m including in this post for the Program class
- Use the TestModel.cs code I’m including in this post for the TestModel class
- Use the Index.cshtml code I’m including in this post in the Razor view that demonstrates the issue
- Do an “add-migration” command in the NuGet Package Manager Console to create the table described in DatabaseContext
- Build and run the web application, and you will get MySqlException: The Command Timeout expired before the operation completed.
Sample code
DatabaseContext.cs
using System.Data.Common;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using MySqlConnector;
public sealed class DatabaseContext : DbContext
{
private static readonly string connString = "server=localhost;sslmode=preferred;usecompression=true;pooling=true;database=dbtest;uid=**********;pwd=**********";
public readonly DbConnection Connection;
private static readonly Lazy<string> DatabaseVersionLoader = new(delegate ()
{
string Result;
using (var TempConnection = new MySqlConnection(connString))
{
TempConnection.Open();
Result = TempConnection.ServerVersion;
}
return Result;
});
public DatabaseContext()
{
Connection = new MySqlConnection(connString);
Database.OpenConnection();
}
protected override void OnConfiguring(DbContextOptionsBuilder Builder)
{
var Version = ServerVersion.Parse(DatabaseVersionLoader.Value);
Builder.UseMySql(Connection, Version, delegate (MySqlDbContextOptionsBuilder MySqlOptions) { MySqlOptions.CommandTimeout(10); });
}
public DbSet<TestModel> TestModels { get; set; } = default!;
}
Program.cs
using Microsoft.EntityFrameworkCore;
public class Program
{
public static void Main(string[] args)
{
var builder = WebApplication.CreateBuilder(args);
// Add services to the container.
builder.Services.AddControllersWithViews();
//#############################################
using (var DB = new DatabaseContext()) { DB.Database.Migrate(); }
//#############################################
var app = builder.Build();
// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
app.UseExceptionHandler("/Home/Error");
}
app.UseStaticFiles();
app.UseRouting();
app.UseAuthorization();
app.MapControllerRoute(name: "default", pattern: "{controller=Home}/{action=Index}/{id?}");
app.Run();
}
}
TestModel.cs
public class TestModel
{
public long ID { get; set; }
public string? Text { get; set; }
}
Index.cshtml
@{
ViewData["Title"] = "Home Page";
}
@{
var SB = new System.Text.StringBuilder();
SB.Append("data:image/jpeg;base64,/9j/4AAQSkZJRgABAgEAyADIAAD/wAARCACAAG");
SB.Append("MDAREAAhEBAxEB/9sAhAAHBQUGBQQHBgYGCAgHCQsTDAsKCgsYERIOExwZHh0");
SB.Append("cGRsbHyMtJh8hKyIbGyc2KCsvMDMzMx4mODw3MTstMjMxAQgICAsKCxcMDBcx");
SB.Append("IBsgIDExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExM");
SB.Append("TExMTExMTH/xAGiAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgsQAAIBAw");
SB.Append("MCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDN");
SB.Append("icoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hp");
SB.Append("anN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw");
SB.Append("8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+gEAAwEBAQEBAQ");
SB.Append("EBAQAAAAAAAAECAwQFBgcICQoLEQACAQIEBAMEBwUEBAABAncAAQIDEQQFITE");
SB.Append("GEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3");
SB.Append("ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk");
SB.Append("5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+");
SB.Append("Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/APIdG81oLlr2WGTYPP2SAtk");
SB.Append("/KeV44AJ49+Ae/oUYuL0N6VpaSOm12y0+PwSfmgkR2M52kNk7gAiHOQMHIAGc");
SB.Append("YPygkB4mV42NKqUVY47RdRjtNUCwu6lyAXSU7XOQdpyvzdBgfzPXgi7HKnYW8");
SB.Append("1SG61KSWzxHDblZYYinDKFGA3zEHBC8nn1HYJ6kzXMmi7q+uLq2oOotTEsICp");
SB.Append("bzOMu5UBucEnooJz06nBIqUrGNGiqZiy6jJqFsIiUR1kG0s5zgnIBBPzAN3Oe");
SB.Append("DnFaSm3obJWKyu1w00rRqDJnEjyf6tfTH5jp16YxUDN2ys7UWc8r6iqzAFkh2");
SB.Append("kBSdwUgc/KATkg7fmHPGTqnDl13Al8I+IpfDeo+Zdp/aELhg9sxJByAFJGcMC");
SB.Append("AOucHA4JzWYPU7e/wDFnhWLRBLHEzX0ju0RgyqxFgOMEgIFJx1BBCnpSuyXE5");
SB.Append("Xwf4ml07xdJeyCCcXMmZYw6jOWB2k5G5cAZ69Oh6NrTnyu4pQ5lY9omutM8Sa");
SB.Append("FLerPFeSSKsotXjIyQcK2CSBjIBUHnGMkV30cQ7nFOjY5CbQ0MpZp7bcwBJOr");
SB.Append("NFnI67QMDPXHH0HSvRVVGHKzgTDFFDHOArO6SAo1yNrckqxwMZJzxnB4A44ri");
SB.Append("UfZxuz1I1Y30C88ROxgW4JNrGxSIoy/vE3nOS5JI+7jngMTzg159aq5s1cm9x");
SB.Append("NO1TRotQt51gaSBBHva864G0KxGcYDE9Bn5Qc8885J0Elt4VdUtpbmKOK2XZb");
SB.Append("vE25sMD88jAsFBwOeuOwGMAFDWLTQ2vrYWbTypMw3yXGGBV/mUDaSqluhJGRk");
SB.Append("fgAas8XgU39u0CwMVjKkuRww2nleNvRuSoxtAIUHgAyry10D+x4iRayTXMyrh");
SB.Append("2CkKAhK7RjYcZHAJ5AzwKAJrYeDLqIW1ndi3SKPzd5yWLYOHP8AugjjBzyGB6");
SB.Append("0ASWGieFFjVLm5ga1JUxTTMp2gqvzEADkAoCCTk5OABkNK4Gra2PgizV7YyxC");
SB.Append("GJTI04yC+FfJAU+pUjPBVSRyMhWsBzl7L4VTStQWz23V1PGPLdG+dXLMc4AwF");
SB.Append("C5yOcDjvijYuEJTdokWg293HopW2a6srpHA83nMaZAbDccZyT05JweCK7cLOK");
SB.Append("vczq0ZLSRUuNL1OadmMkCEfJiYSRsdvGSvOM4z+PbpXYpRZj7IoT6tf30k1vf");
SB.Append("OBDLHnDyDao4AIznB4bknHIHAxXnTrznoy4UlHYs6TpFpeTQSvDseJwzFgcsC");
SB.Append("2VYbch8kN7Y4yNuTthsN7XVkVavIaHiXw2bLTzf20U6wAEyw3DMrtg7Ccjgr2");
SB.Append("zn+H0znPE0FSegUavPuY2q2NlHbLKNRfc6l8FgM4TAwMADJxjBIYc9hXLY1pt");
SB.Append("tvmKdzdNcvFFdL5atne3JfI55GOvT2BycYxQUUglx5m4yMWwRkSBQoBGAD0GD");
SB.Append("jgeooAFkLCGXzJM7gIyF3bQOdoz1OSKAHzSuIUiUuhkOXQAJ8ueMtgcHI9hjp");
SB.Append("jGAC34d1KHTb6G9ukEhQjy0DhQRtZTnPA6LnjnjPBOWhMv6qo8RX93qdpAkMK");
SB.Append("ZQDcFSHaCF5wRg9gMAfLk8g0qk1F6kOajozoPBP9lwW8wmuDagMRHNubEgwCw");
SB.Append("2gE9MADI5Bz14mXkengKsYS1KutqfD/APx53EbSOEZjJhw0RUAE9AAWKjsRg/");
SB.Append("eFOF46o2x7hZco23+IL2NulvLCkcij5kjt4yFJ5x83PGe/PuetdHtmeSc7v8l");
SB.Append("5Y5YfLKJlCA+0rwNw74woBYdhnB6jnkm2bwkoJpo2NBmW31O2E0kcxkYzzCWT");
SB.Append("jaQVwwB4GDnkDAJ6gkV34bFKkrM469By2Og8TeLbXXLS2sEWVoIgJHklbdh8E");
SB.Append("BxkHdk4AAJHC/e7ZVantJXFSpcu5xdpDaXd7Ck1zItrLk+ZyQoUEEghc7uA+M");
SB.Append("c8A+tZJczsbN2Rq2XhG41C/ktrSRUXy1bzEmBKLuXGc46ZB6jAHYcnGtUjS3M");
SB.Append("p1lFanZaf4M0eza0S8tjdSx7Z5mAUB8Kw3ZPzc5HXA6EDLAHhqYuT+E5JYtt6");
SB.Append("HTX/AIN8Py2xmSzV/MiMaOqbiM5BLZYtjAOCOm1uDgAcscVU5tw+sNHPal8M9");
SB.Append("LkuHSK5uIJlRVjMMKsA6k/Kqht3LMuOeenHbqjjmviRpDE3OG8TeFL7wlceXz");
SB.Append("Ogd0RljYFQGVhznP8AEoPQjOK7KVaNRXidUZqRkq0t0txY6dHsE52+Upf94Bn");
SB.Append("AAY9sMecAHPfbi5JbsrlTLsPh7U9Ps5L3TixELeXIyR5kY79pG3n1HGedvsaz");
SB.Append("deCly3BysyfTvDeoaxtngVjaRoygywhijnJ27QGwAOSQMAD14p1KygrmsIuo7");
SB.Append("GPd6K6XciyWlzI2c7vPQfgeOo6fh0HSpjXi1ct0GnYlhnWXUGiu5riaAxjMca");
SB.Append("7Aw6HHXHPUcc59MHVuxWHiqk7TNy6tUmu4rnTXijCRB0SFhI6MAHA5yXwyng4");
SB.Append("5U9gaqVrFYmmoy90uxyaPqel6xPcJCt9KzSR+VMXO/G4leMDnHcYySRxzbjZJ");
SB.Append("ROK+upneCPDY8SXEkM8BaC3RnDxZIYfICMKpOfmBzzjcePTDE1HRhzGVWqoo7");
SB.Append("06hbaW1vbWCyGOYFZbeTAVUDqu4465K4CgEEHGeBnyoxlUfPI81uVRmc3iqOz");
SB.Append("to78RxOixl4o3zI7OrAhcnk4Dt06Lj0IGqp82hUaMtrD7vxLfz210i3jBH2l2");
SB.Append("LMSjkjgZLFf48AjcNwxuOBURw6TH7Gd9Spd+IdW3NJdBxI6+XiHKu8pIOMYI6");
SB.Append("KvTOcDpnI09mmjT6nUtextg2Xi2wu0vJftUvKuzgxDkZV9u7GCVzg8nHGMCoh");
SB.Append("elK6M4VZQlZnnKaDdLb+csjxXMR8xtuCSc4VuByvDe/XGR19hx5op9z1KcuZX");
SB.Append("O9m8S+Gx4NtbG4ml+0Kp3JG6iOTaFG3CruzwBjAPftx4M8HVVZyIqpy2PPbXX");
SB.Append("b7SLFre1jCpOXLR+YGMhJODgEkjAGDjGSD2yfWdLmgkzalJ0zTtPHZ06D7KYr");
SB.Append("dfLdsKXbKgsSB9xugOOpqVRsbe2M0eH/APR5I7dVlkDZVioIjI3FhkNkYwOvJ");
SB.Append("Hbqa9ueWy+yeXDGpasksPDus21u4O+BjHGqqTj5X3DvwpyxB9MsSKzWXTe5cs");
SB.Append("bFbGjZeHljn36haNFJKViZJELAZOCq4wOmSORgDpjDHsp4BRV5HLVxjfwnR2u");
SB.Append("nTaVdrc2dtdS2yRtLuUbljxuwRyckkoc5J57CjE4OnVhyyMvauS1L15o1nG81");
SB.Append("xeFxKTuaTyNvmh0ZipwOg2ljkZwexAz8/Uy+tTdoq6HCq4bFC68KLKUd5Li5t");
SB.Append("lZRIJASJGEnzbSACSAeCMHqO+2uWrSrUlzNWPcy7ERrPkmtRLbS7X+ztPubqW");
SB.Append("4glgcopZMJGBnJyd2cEYGf7wHHUcXtpXsj2vYUraonuNMt7mBzFttbdRvV3j+");
SB.Append("82RgrtONg8tie3A6nGPSw+Bry17nz+ZY33vZw0SLulXGk26PaR286tLbOrswK");
SB.Append("pIeTjb1HAAByTg898+rh8qfNzVTw3LW5zF1psq3b+VHJHMibpS0ZR9sYGSwGd");
SB.Append("oxjJ44ZgN54r2nQhy2SNI1mjnZNFvrS+nLrMsmCMKu1XxnYQMZP3WJ4+nPFeb");
SB.Append("WwbTujtp4lNJFSDT38gx3E7lXh37cfdC7gvBU4wAeQe5xkAmuGVKUdz0sLCFZ");
SB.Append("2bKsFvd+QvlQMY/4SqykEfgMVnyvsTOKUmjs2jDyYt7hvKb52ZeTsUEuflypJ");
SB.Append("DDlsff8Afj60+ftpdm4dDjlENvFb3D3GGZZIiMlg7ksvCqcZJxjneAOu4Rczc");
SB.Append("i5qXhl7LfbXF/MhcM5RWHzrnIzhduTluTggsBzxQpJk3Ov8GTWdlp/lT/JdcF");
SB.Append("pQ5CBix3DcrqpyVyBkEdATggctaDkXCdjpptJ03X0+0raz29s2IpvKRFU9cxs");
SB.Append("qneDk4PT2HIJ5XUlT0uax94j8V6Lo2jWJtEVlu59jCEEbU24JIb5QB97rzk8D");
SB.Append("GK8jMa050Xc9rLaSjVTORzFbRoVdZl894/LUYHLEHDjGSNwbgdh6KV+Xg7SPp");
SB.Append("Z7HZaXoOn3Xhsw2rqDMo+znYGEThfl5AIIC4bdk8DnrX2WDxUoQR8jjKF5s5D");
SB.Append("UvD+paRe4tWvCTEHADMjIu1QTtVGBHDYB7kgDODXtU68ZnlTpuJyt8b+3vUdE");
SB.Append("gthIWZclvKCvtIG4DGCVz7lSOVPO90R6lI29jcXEtzcJBHEz+WFWMZiYjLAEJ");
SB.Append("kFcjBx1IHOTQ4pjTa2KN9oUaIsm5kUSFGlZQjSNtkAc5JI25XnPr36ZTpRkbU");
SB.Append("68obEUPg3R/JU3enapPO3zPIoOGJ5yOuRz1yfqa5vqi6HT9buVLNzbNHId04t");
SB.Append("5TIhkYrsXJIZe4JI7nqRkHivQa0OV67Hex3yXElvLpcFqvn7o90SKpkGcD5dw");
SB.Append("YANkHIxk45OCc3oYNMt2cdpJE1rcyxR2vmMIZZf3yrg5UKvAKhc8Hj5gcYYZz");
SB.Append("btsFjrdC020vI76aOYuLhpAiQOVGFOdoI6ZBJwM5BOcnpzTqNblqNylrOuroy");
SB.Append("2kNu4+1qEa5jGWBXK4yV4fljg56dTk5rixGJhShzSPYy7L5V5Xexl6boOo6lr");
SB.Append("Lz6peGTy32rDLBI6sGz99WIKjJ4yfzr5PF5nOt7sVofU0qeHpv2cNWal5aRXN");
SB.Append("lD9tigtdysFNspYAE7curYwFGeucdMDgHzk29Tp5Nyj9k1nTD5mnXFxHb7GOJ");
SB.Append("IRsZWUfKdzckhO3y52g4wRXr4TM3SahVWhw1aWGxN4x0kdTYX41LRvJlicXMj");
SB.Append("SwmNlY+YzAggEADaDvPHXJIANfTUpRkuaL0Pl8bhZ0JcrMPxFpVrE1xe2tqhl");
SB.Append("luBG6MzbjKSchQrYbGc54HOeor0KUm9GeXLQ5PVdOkvoovsljuMWC0qS7ijqq");
SB.Append("sSpPQ8c8kEgZ5ya6lJLclSMTWrC4gXzLWe2ihRAUKyMTu3d24J6tg887ugztp");
SB.Append("NMat1K1trOvW1rFFa2tmYAoKF7hUODz03D17gE9TzRYvlj3OpsPB1pGbq4MMU");
SB.Append("0cDFGDzuEVVIZQcAkjBH97lR0C1DmRzMtXfhuK2SNGVliDBpEjk8skbcfIM/c");
SB.Append("w3fnH3jgkiVUQtSbRoUS7DXduzJKI4VjZi25lUZJIbJI+bGAN27PQgmZsSuzs");
SB.Append("tPEUPnRzuJsLvSZnKs0ZwoQlTwGJ6c9e3UcNZ2Wp00I80rFibSkh1KO6luTHa");
SB.Append("wugMdwol24TJHAOBt3dwMq3GGJHymZSlWqKF9D62FVUaHJDdmJr3iBX3CK6Fw");
SB.Append("2WCQOu7agGCHY5xzs+bdg4z1rirKLtCB0YCg6a557sxtIv4LyRJIhJcXURZQ+");
SB.Append("E8tMcgsC3Xlck8jkDkcZ0qTU0d9WonB2PQ9TtrVlSXToY41dP3tw6sfJGTk/e");
SB.Append("I4LE49wOa9jE4WFWn5nycpShPnRz7Q3ema++oMrwRFN7KyLuIZtpxyWTn+HOM");
SB.Append("j+EnNRlGInGTozPWxSjicNzPdB4isj5sybZ5XkXaPMjH7sDLHLZA2sdxJwAQj");
SB.Append("cc7q+rpS0ufHVI2lYyNSuVsEkmEkEb/ACusvmDaJGzgA8EcoRxwQxIIHFdEI8");
SB.Append("yuZN2KUF3b38ENncWQkS5SSYrggRrk7cBxg4yeOnAPPFXy21QJklp4VN3bCc3");
SB.Append("ksZcklGmJK8njKtg/hT9oy9DW07w5JbXYnswCQuFWSVEONzEDbjrtbJGBjgc4");
SB.Append("OcHWXUbh2L0MNw9vJDvS3YFFjlhmzhMcBjk9QFHH93JPABycle6Fa2hM2gGSY");
SB.Append("qzReUUeISSrlLYhQqAknBO0nOB1OemDWf1hJe8aexk9i/p2o/2U32eQSyzMqo");
SB.Append("Ukztba2wsTwDgY4IzjHcV4+Px0UrI7cNTcXY8/1rxeNS1ae2shKykvukmkKty");
SB.Append("GB4JxyqrkjGMg9MAeDOcqnvSPWnXjhrXV2UdV8u8iktzFthbcd4YyAYIKt0Iw");
SB.Append("DubAI77gMVjBtPQ7qWOVam1sytb3EVhdvFYyJbyRYDRRgtJuC4JEf3TkZU8gc");
SB.Append("nueejllLVHHSzB0ny1djqtL8fTwW8MtzbWs1vdxF3dMKmOc55+8AcHHGTjI5J");
SB.Append("3ji5rQ6ZUKMvevubNjrljNox1P7En7tNil/vKpYAbgeCcNnpgbRjIIx1UuS/t");
SB.Append("epyTn7O8IvQ0jbLeyxXtneHq7Rjo7uGGSR2BROWPGeQOcV7WHxMJLRnh1qd25");
SB.Append("I5vU9Da7kaJQhmiQpNGcsD8wJChuDz6gnOMYyGr0oVVY4ZRZj6to2qaW4urm2");
SB.Append("SaSFCQ5bKN3wMnKMpIICkEgcH02jUi0RZnPT6cWnYojSjP35CAxPfOXBz26Cn");
SB.Append("ZDuz2eGG1triNltN0zoGW5wVA3byuQMg/MAAOT06k4ryXUk1qd3s7PQq39rae");
SB.Append("HprWW6YFJPmhjjQ784OUTIBxlgPXG0dqyqYlRjqaRw92ZWp69LbalDYwQsHZD");
SB.Append("swwkCAjBBTH3cA5wWwFHGWyfFxmKlOOh3Ploxslqcvq9/KLm3t5YILI3blDAk");
SB.Append("QUyghQOozkB8EE/rmuDR6swjiFTldrcyzqOn+bYJG8vlCUqzTKWErjOGWPAJy");
SB.Append("BjPqw7/NSephOrJsI/Ne4a8jugs7S4iDb1K53tgLt5JJZtp5HHXNEVboV7aa2");
SB.Append("LL3WnyKkqtviuZQZVjZgwAClsNnmQqMAKO7D6km1sZurJ/EQ+VpjXr24ZWguI");
SB.Append("zMkCRLxkKQPlxk5K89CACT1xm3Kx0xxlRPXYtW8S2lnBDZAfaiixMvmbSSMbt");
SB.Append("pJwR8xG5Om7pnlW6krWM5Ym0+YuwQ6jZ6R5FsreYOfLkcON3zNjaMEglmXOBg");
SB.Append("4IzgGuujU5VcXPd3toaGn+MZNbTyZbcG0CJbQhkIVWyONyk5OP4WI5CkKe3VH");
SB.Append("MHTkle4/Zcyuzr9MWC70JZlSRInXzJFjQFhuG0KVbg5U988AdC1epSxcaqumQ");
SB.Append("6NkZd5o9+LyQRW2qzRg4WS0kZY2H+yAK7PrC6sz+rt7Itatrmn6RbyXiSxrIU");
SB.Append("fMLFlzwGT5WwfvDj1BGccCvNrYpQ06nVGN9jy3WvE174n1FBpV7kSzEQtgEKr");
SB.Append("ZY7hj5ScAqMdx3JI8286srs6oU3oy3YSTpDbNJcQxzFNgdTlkLYLEDO0D5MnO");
SB.Append("QRnA4OeuFFSjeohVoOU00V7aYag7P56GIL5RlJQgk5IY8Flw2TgnIJG0ZzXnY");
SB.Append("ihGOzJq4S7ve7MeaRTOfsk6Wa7ysw/iTk8tkjufu8jLHByABlTScTgrU3TdmV");
SB.Append("pru7N/In2VYlglcuqxiRQTzgle/3QAQfurwDjNez0ITbRDNeyrcW0UsIjuto2");
SB.Append("yAbHKkhVDRsGDEYBABGNuOCKPZq4r2di7ol80X2mK7dmYxNBtuc5jLfL3654P");
SB.Append("bk4O3jMSpXY1Kz1N8W0UogjeGSG4mlaFgiFS7DcSSIyu4YK8gDpyOflw5VGVm");
SB.Append("dVPBVKsb20INSupYg8cVgmMFWmklVRJx8gZW4ZSQT+OQQqhj6FKg5K62OlUJp");
SB.Append("Wtsc2l4ryJPcgNNCpmn2L8jk7i248EEfLhifvZGDzWbw3cdVp2sdJZ+JnjFmk");
SB.Append("N8RFAxW3bcmZGAwuRj5myF4z2PA6AdOVOScTKbgl5nXW/xjt7aHyLi5uPMjZk");
SB.Append("+UADaCQvTjpiutYmVtUJT0PJ21K71WMi9vLMzBfLjhJyDIM7crkBQcZweMkfK");
SB.Append("M5rmbtK7Jg2tSRNbt5lisIYTstm3y72JeYADHICnG5n2jP3mAAA6EJThJyua1");
SB.Append("K6cUkA1mT+1GvIrcR3cjNBJAQxBJHBznkYwME4JJwQMkaQqzWjYPGNP3ENXV5");
SB.Append("44vtsSqrySD7PI46OyoSSMbTgc5wPu8DptdW042Y6WMlTlzNDm8SwXFzHPfSR");
SB.Append("CdnW4VYVUHbuYjLY64PGSOD0HfKjDkfkZV8TKrLmaIj4kjkhnY3BiguGRpDKc");
SB.Append("zK2TwoUAK2VHCg5HJx0rvfLLVI7MFUoQd5ode+LLeKyVrS2ilkXMsMysAZME/");
SB.Append("M4VhjA24XGACeBzjNxSdznxEqbq80EOg8Qw/a5Uks1geJSxjSIKkqFc5+RAdx");
SB.Append("BfHdQCDnLGoSsrjqVKbirRNTVPGyxyTaXuuhIdtt5zO4ZhgqpbcNoJIB3Dr82");
SB.Append("O1c8MKlLmkdSx1qfLY5+91vbrEMjSySCR0klRUK4Vs/JtByRtUA9OADg5yO6L");
SB.Append("UF7hzLFSvdbFxdZk1Cy2pa+YYt27dO5KbwCVyvzcDtxySOpxSqzjUhynPGs41");
SB.Append("HJLQpw3z+VA8cscLW2WkFvtCLIw4BI/h7ngjAf0xXNy8ugpzvqSW0GoR2kS29");
SB.Append("lHJHsHzC2jGTjnjzRjnPYVV4sd0ZdtEUlkMEdxMhk3B5ZHkSbnD8BcknkHI/n");
SB.Append("ih67i3EvnktLyW8ECkgJIEQPsyDyQBgMO5B2n0J6kUU9B8lyjNq6SXAaN3vJw");
SB.Append("pKyG43fKQMhiwyMYPJxg4OADxoqXc1hRM+W7jWEsiXKPNh2Ek0bqwA+Xkjgc/");
SB.Append("TjHbI0VPozf2S6li7uXvb3ZFGbi1klTyS5CgNznOeSTg9epB64oUYopUNdEVY");
SB.Append("ZJIdIzGsc+d4L4YCNSACMYGMlsemR61TauCoSeqQ/fMkWAWjfJkCIAAoYFtue");
SB.Append("dynA4I9PXkvEp4eS6EkUk+ntsd0uEMTLteXaQg/g5HQ89PU4xjIVlJ3CVJrRo");
SB.Append("bNO91Yw8LcRRqsYAj2nLMWID/wAOPlHB/KnyJGbp6aDJJtqySXsUcsvmgu3mk");
SB.Append("gHGCp9GGBz1IB54OVKLtZGUoNKxqtdGy063+zM8sjoDuZ1/d/Ku3JI+UZwR7L");
SB.Append("g9OMOXXUwce5ana5+wuYllkiBYlZYtxAUfd5IJGd2TjPDZBHWLa6iSIJoNRu5");
SB.Append("3ngMDxsfveY/Xoehx1z6fQdKEorcehEmp+bcXKeWjGUmEBYwoZgSMsDlgfnXk");
SB.Append("9sgg1s4dyuRld9WaaWfBeG3bEoXeCqvnBIbb13BRnkAB8dBVxpqxtCncoxJvI");
SB.Append("aZ5IfNwVdGK7Y+M9QN3bA54HoBmnJRR20qDk1Y6TQvB/wBtGZpG8hEyFwFb7x");
SB.Append("B4JxgH0yAW5ONxbz6+PUdInqUMsbd5HQW+n2F3aRx2EDuDKUjabCFWOdy71JZ");
SB.Append("OAO5JGB3ridacXeTPVhh47JGtoWgwQCJ1t4pyDncr4cEEgkhjtB+YgAEcvnB5");
SB.Append("xxV8XOWl7HXGhGHQsHTNNmZLpNOgWC2tzzE6hi2DyN/AwM9c8L1IFYQxFW9ru");
SB.Append("9wVON2mjNXT9BlWWO9kRJ458Fo0ZkCseg2jLHdkDp04PBB7I1a61QqmGg+hj6");
SB.Append("t4Si3hNHlPklWcJ5RLKRknk9Rt2556445466GYy+2eZicvjb3TjU017S8hFzB");
SB.Append("GVZj5gcKikfNhh04xnkgfdPPSvYjWjNXieFLDSg/eK6zeTqVpsaIyh03IECLu");
SB.Append("Hy9QDjI5B4I5OBxV6NHPOlZ26mmJYrJUJRBOpPmzID5WAMqCWByflHTGDjHNZ");
SB.Append("OD6HJOm07GnDrGowQRxtdbWVRkG6TOcdTuRjn8TWdomdkc3OZkMkk8zeZGSi4");
SB.Append("2swVun1JDMcH0Pds10nSlccLaOeIzyJAJHAw7LtRVwAcAkc854B9uaiU3sj0a");
SB.Append("dCKV2dJodtDbW0l7I7SQhnMarzjGNzbepbA5PAGR1BwPPxM23yI93B0VGPOzq");
SB.Append("fMvbZIDMwaHy1gk2pgtjJxk7dmFbIGAMjrwK89qLOyOrsLAzyW1pHFAwn8xlX");
SB.Append("c7HyHwCS+ehBXd0weeOtJno0aC3Z0OhWcl2glsC8luj4OfnKjauRnIAX5uWDD");
SB.Append("OevU15uLqxpuzM8ZXjRVjelsGaeS1STzoDKS0TvIzyAqCuM5wcd8jIz0xXDGp");
SB.Append("ze8edGtqpHnutWRS/ulkP2ozB3ZI0yxXdgEKQTuAPXPAyDnb830GHqJxR7Spq");
SB.Append("UNStb3jaf9hglvpxazRlIgV4CFl27geDzwcHoo4wTnWpTU02lqc1Sjy6Mpa5p");
SB.Append("cFnCJpGkt7qKLf5qt8zStu4PJ4IQcjruOT2q8NVex52IwykrnLXVo6xxuYZXL");
SB.Append("KPKDN8oJ4IOeh+8AMcbF65r1Kc09DxK1FwdzNe9S3uZRA5KpKrrLGnIxx/EPl");
SB.Append("ByePYDpknoS0PMqxUpMZFr99Yxi2S4l2p08uQBeeeABx16UOmnqc8qauf/9k=");
using (var DB = new DatabaseContext())
{
var TheTestModel = new TestModel();
TheTestModel.Text = SB.ToString(); //the string is only 10,919 characters
DB.Add(TheTestModel);
DB.SaveChanges();
}
using (var DB = new DatabaseContext())
{
var TheTestModel = DB.TestModels.First(); // <-- the error will occur here
var TheString = TheTestModel.Text;
Console.WriteLine(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> success");
}
}
The String
data:image/jpeg;base64,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
The issue
When the following image (an 8kb thumbnail) is converted into a base64 string (only 10,919 characters, located at the bottom of this post), and the string is saved to the database, and this string is attempted to be fetched from the database while usecompression=true
is present in the connection string, the command will time out. The error does not occur when usecompression=false
. I tested this with the timeout at 10 seconds. I don’t think it should take that long.
Note 1: Trim off a hundred characters from the string, and retry the test. It will load without error very quickly.
Note 2: I used to experiment with usecompression=true
in the Core 3.1 versions of Pomelo.EntityFrameworkCore.MySql, and never got this error. Maybe it has something to do with ASP.NET 6?
The error message details are:
MySqlConnector.MySqlException (0x80004005): The Command Timeout expired before the operation completed.
at MySqlConnector.Protocol.Serialization.BufferedByteReader.ReadBytesAsync(IByteHandler byteHandler, ArraySegment`1 buffer, Int32 totalBytesToRead, IOBehavior ioBehavior) in /_/src/MySqlConnector/Protocol/Serialization/BufferedByteReader.cs:line 34
at MySqlConnector.Utilities.ValueTaskExtensions.ContinueWith[T,TResult](ValueTask`1 valueTask, Func`2 continuation) in /_/src/MySqlConnector/Utilities/ValueTaskExtensions.cs:line 5
at MySqlConnector.Protocol.Serialization.BufferedByteReader.ReadBytesAsync(IByteHandler byteHandler, ArraySegment`1 buffer, Int32 totalBytesToRead, IOBehavior ioBehavior) in /_/src/MySqlConnector/Protocol/Serialization/BufferedByteReader.cs:line 34
at MySqlConnector.Protocol.Serialization.ProtocolUtility.<ReadPacketAfterHeader>g__AddContinuation|2_0(ValueTask`1 payloadBytesTask, Int32 payloadLength, ProtocolErrorBehavior protocolErrorBehavior, Exception packetOutOfOrderException) in /_/src/MySqlConnector/Protocol/Serialization/ProtocolUtility.cs:line 434
at MySqlConnector.Protocol.Serialization.ProtocolUtility.<DoReadPayloadAsync>g__AddContinuation|5_0(ValueTask`1 readPacketTask, BufferedByteReader bufferedByteReader, IByteHandler byteHandler, Func`1 getNextSequenceNumber, ArraySegmentHolder`1 previousPayloads, ProtocolErrorBehavior protocolErrorBehavior, IOBehavior ioBehavior) in /_/src/MySqlConnector/Protocol/Serialization/ProtocolUtility.cs:line 476
at MySqlConnector.Core.ServerSession.ReceiveReplyAsyncAwaited(ValueTask`1 task) in /_/src/MySqlConnector/Core/ServerSession.cs:line 943
at MySqlConnector.Core.ResultSet.<ScanRowAsync>g__ScanRowAsyncAwaited|9_0(ResultSet resultSet, Task`1 payloadTask, Row row, CancellationToken token) in /_/src/MySqlConnector/Core/ResultSet.cs:line 240
at MySqlConnector.Core.ResultSet.ReadAsync(IOBehavior ioBehavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/Core/ResultSet.cs:line 195
at MySqlConnector.Core.ResultSet.Read() in /_/src/MySqlConnector/Core/ResultSet.cs:line 187
at MySqlConnector.MySqlDataReader.Read() in /_/src/MySqlConnector/MySqlDataReader.cs:line 27
at Microsoft.EntityFrameworkCore.Storage.RelationalDataReader.Read()
at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.Enumerator.MoveNext()
at System.Linq.Enumerable.TryGetSingle[TSource](IEnumerable`1 source, Boolean& found)
at lambda_method42(Closure , QueryContext )
at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.Execute[TResult](Expression query)
at Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryProvider.Execute[TResult](Expression expression)
at System.Linq.Queryable.First[TSource](IQueryable`1 source)
at AspNetCoreGeneratedDocument.Views_Home_Index.ExecuteAsync() in C:\********\Web\Views\Home\Index.cshtml:line 194
at Microsoft.AspNetCore.Mvc.Razor.RazorView.RenderPageCoreAsync(IRazorPage page, ViewContext context)
at Microsoft.AspNetCore.Mvc.Razor.RazorView.RenderPageAsync(IRazorPage page, ViewContext context, Boolean invokeViewStarts)
at Microsoft.AspNetCore.Mvc.Razor.RazorView.RenderAsync(ViewContext context)
at Microsoft.AspNetCore.Mvc.ViewFeatures.ViewExecutor.ExecuteAsync(ViewContext viewContext, String contentType, Nullable`1 statusCode)
at Microsoft.AspNetCore.Mvc.ViewFeatures.ViewExecutor.ExecuteAsync(ViewContext viewContext, String contentType, Nullable`1 statusCode)
at Microsoft.AspNetCore.Mvc.ViewFeatures.ViewExecutor.ExecuteAsync(ActionContext actionContext, IView view, ViewDataDictionary viewData, ITempDataDictionary tempData, String contentType, Nullable`1 statusCode)
at Microsoft.AspNetCore.Mvc.ViewFeatures.ViewResultExecutor.ExecuteAsync(ActionContext context, ViewResult result)
at Microsoft.AspNetCore.Mvc.ViewResult.ExecuteResultAsync(ActionContext context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextResultFilterAsync>g__Awaited|30_0[TFilter,TFilterAsync](ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResultExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.ResultNext[TFilter,TFilterAsync](State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.InvokeResultFilters()
--- End of stack trace from previous location ---
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextResourceFilter>g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResourceExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.InvokeFilterPipelineAsync()
--- End of stack trace from previous location ---
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Routing.EndpointMiddleware.<Invoke>g__AwaitRequestTask|6_0(Endpoint endpoint, Task requestTask, ILogger logger)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.Invoke(HttpContext context)
Technical details
Visual Studio version: Community 2022 x64 17.0.1 MySQL version: 10.5.8-MariaDB Operating system: Windows 10 Home Pomelo.EntityFrameworkCore.MySql version: 6.0.1 Microsoft.AspNetCore.App version: .NET 6.0
Issue Analytics
- State:
- Created 2 years ago
- Comments:7
@rambouillet You should be able to resolve the problem by updating the MySqlConnector package to
2.1.32.1.4.There is a possible related issue mentioned in Partial and zero-byte reads in DeflateStream, GZipStream, and CryptoStream.