Incorrect string value in Subject

Dears,

we got recently a Email to the RT (4.4.1-3+deb9u3) but the ticket could not be created because of an incorrect Sting value:

DBD::mysql::st execute failed: Incorrect string value: ‘\xF0\x9F\x92\xAC U…’ for column ‘Subject’ at row 1 at /usr/share/perl5/DBIx/SearchBuilder/Handle.pm line 586.

here the full error:

Mar 20 07:28:42 rt1 RT: [12498] RT::User::CanonicalizeUserInfoFromExternalAuth returning Comments: Autocreated on ticket submission, Disabled: , EmailAddress: xxxxx, Name: xxxxx, Privileged: , RealName: Nils Recken
Mar 20 07:28:42 rt1 RT: [12498] DBD::mysql::st execute failed: Incorrect string value: ‘\xF0\x9F\x92\xAC U…’ for column ‘Subject’ at row 1 at /usr/share/perl5/DBIx/SearchBuilder/Handle.pm line 586.
Mar 20 07:28:42 rt1 RT: [12498] RT::Handle=HASH(0x55aa9660ab58) couldn’t execute the query ‘INSERT INTO Tickets (Due, Priority, LastUpdated, Created, Started, Creator, Queue, Type, Status, SLA, Resolved, LastUpdatedBy, Subject, Starts) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)’ at /usr/share/perl5/DBIx/SearchBuilder/Handle.pm line 599.#012#011DBIx::SearchBuilder::Handle::SimpleQuery(RT::Handle=HASH(0x55aa9660ab58), “INSERT INTO Tickets (Due, Priority, LastUpdated, Created, Sta”…, “1970-01-01 00:00:00”, 0, “2018-03-20 06:28:42”, “2018-03-20 06:28:42”, “1970-01-01 00:00:00”, 897241, …) called at /usr/share/perl5/DBIx/SearchBuilder/Handle.pm line 352#012#011DBIx::SearchBuilder::Handle::Insert(RT::Handle=HASH(0x55aa9660ab58), “Tickets”, “Due”, “1970-01-01 00:00:00”, “Priority”, 0, “LastUpdated”, “2018-03-20 06:28:42”, …) called at /usr/share/perl5/DBIx/SearchBuilder/Handle/mysql.pm line 36#012#011DBIx::SearchBuilder::Handle::mysql::Insert(RT::Handle=HASH(0x55aa9660ab58), “Tickets”, “Due”, “1970-01-01 00:00:00”, “Priority”, 0, “LastUpdated”, “2018-03-20 06:28:42”, …) called at /usr/share/perl5/DBIx/SearchBuilder/Record.pm line 1320#012#011DBIx::SearchBuilder::Record::Create(RT::Ticket=HASH(0x55aa97445398), “SLA”, undef, “Resolved”, “1970-01-01 00:00:00”, “Status”, “new”, “Queue”, …) called at /usr/share/request-tracker4/lib/RT/Record.pm line 317#012#011RT::Record::Create(RT::Ticket=HASH(0x55aa97445398), “Subject”, “[SUSPECT] - [\x{1f4ac} Ungelesene Nachricht von Mike] from: n”…, “Resolved”, “1970-01-01 00:00:00”, “SLA”, undef, “Priority”, …) called at /usr/share/request-tracker4/lib/RT/Ticket.pm line 419#012#011RT::ticket::Create(RT::Ticket=HASH(0x55aa97445398), “Queue”, 1, “Subject”, “[SUSPECT] - [\x{1f4ac} Ungelesene Nachricht von Mike] from: n”…, “Requestor”, ARRAY(0x55aa958d20e0), “Cc”, …) called at /usr/share/request-tracker4/lib/RT/Interface/Email/Action/Defaults.pm line 106#012#011RT::Interface::email::Action::Defaults::_HandleCreate(“Ticket”, RT::Ticket=HASH(0x55aa97445398), “Message”, MIME::Entity=HASH(0x55aa973f1ee8), “Subject”, “[SUSPECT] - [\x{1f4ac} Ungelesene Nachricht von Mike] from: n”…, “Queue”, RT::Queue=HASH(0x55aa9743ac40), …) called at /usr/share/request-tracker4/lib/RT/Interface/Email/Action/Defaults.pm line 135#012#011RT::Interface::email::Action::Defaults::_HandleEither(“Ticket”, RT::Ticket=HASH(0x55aa97445398), “Message”, MIME::Entity=HASH(0x55aa973f1ee8), “Subject”, “[SUSPECT] - [\x{1f4ac} Ungelesene Nachricht von Mike] from: n”…, “Queue”, RT::Queue=HASH(0x55aa9743ac40), …) called at /usr/share/request-tracker4/lib/RT/Interface/Email/Action/Defaults.pm line 121#012#011RT::Interface::email::Action::Defaults::HandleCorrespond(“Ticket”, RT::Ticket=HASH(0x55aa97445398), “Message”, MIME::Entity=HASH(0x55aa973f1ee8), “Subject”, “[SUSPECT] - [\x{1f4ac} Ungelesene Nachricht von Mike] from: n”…, “Queue”, RT::Queue=HASH(0x55aa9743ac40), …) called at /usr/share/request-tracker4/lib/RT/Interface/Email.pm line 425#012#011RT::Interface::email::HandleAction(“Action”, “correspond”, “Subject”, “[SUSPECT] - [\x{1f4ac} Ungelesene Nachricht von Mike] from: n”…, “Message”, MIME::Entity=HASH(0x55aa973f1ee8), “CurrentUser”, RT::CurrentUser=HASH(0x55aa9743e4b8), …) called at /usr/share/request-tracker4/lib/RT/Interface/Email.pm line 254#012#011RT::Interface::email::Gateway(HASH(0x55aa96df0338)) called at /usr/share/request-tracker4/html/REST/1.0/NoAuth/mail-gateway line 61#012#011HTML::Mason::Commands::ANON(“message”, “From xxxxx Tue Mar 20 07:28:42 2018\x{a}Retur”…, “action”, “correspond”, “queue”, “SOC”) called at /usr/share/perl5/HTML/Mason/Component.pm line 135#012#011HTML::Mason::Component::run(HTML::Mason::Component::FileBased=HASH(0x55aa96d9ffb8), “message”, “From xxxxxx Tue Mar 20 07:28:42 2018\x{a}Retur”…, “action”, “correspond”, “queue”, “SOC”) called at /usr/share/perl5/HTML/Mason/Request.pm line 1300#012#011eval {…} called at /usr/share/perl5/HTML/Mason/Request.pm line 1292#012#011HTML::Mason::Request::comp(undef, undef, undef, “message”, “From xxxx Tue Mar 20 07:28:42 2018\x{a}Retur”…, “action”, “correspond”, “queue”, …) called at /usr/share/perl5/HTML/Mason/Request.pm line 481#012#011eval {…} called at /usr/share/perl5/HTML/Mason/Request.pm line 481#012#011eval {…} called at /usr/share/perl5/HTML/Mason/Request.pm line 433#012#011HTML::Mason::Request::exec(RT::Interface::Web::Request=HASH(0x55aa97437080)) called at /usr/share/perl5/HTML/Mason/PSGIHandler.pm line 96#012#011eval {…} called at /usr/share/perl5/HTML/Mason/PSGIHandler.pm line 96#012#011HTML::Mason::Request::PSGI::exec(RT::Interface::Web::Request=HASH(0x55aa97437080)) called at /usr/share/perl5/HTML/Mason/Interp.pm line 342#012#011HTML::Mason::Interp::exec(undef, undef, “message”, “From xxxx Tue Mar 20 07:28:42 2018\x{a}Retur”…, “action”, “correspond”, “queue”, “SOC”) called at /usr/share/perl5/HTML/Mason/PSGIHandler.pm line 59#012#011eval {…} called at /usr/share/perl5/HTML/Mason/PSGIHandler.pm line 59#012#011HTML::Mason::PSGIHandler::invoke_mason(HTML::Mason::PSGIHandler::Streamy=HASH(0x55aa9650fca8), HASH(0x55aa97424830), HASH(0x55aa97427750)) called at /usr/share/perl5/HTML/Mason/PSGIHandler/Streamy.pm line 52#012#011HTML::Mason::PSGIHandler::Streamy::ANON(CODE(0x55aa973e10e8)) called at /usr/share/perl5/Plack/Util.pm line 339#012#011Plack::Util::ANON(CODE(0x55aa96dd6818)) called at /usr/share/perl5/Plack/Handler/FCGI.pm line 147#012#011Plack::Handler::FCGI::run(Plack::Handler::FCGI=HASH(0x55aa96553ba8), CODE(0x55aa96553860)) called at /usr/share/perl5/Plack/Loader.pm line 84#012#011Plack::Loader::run(Plack::Loader=HASH(0x55aa9654c048), Plack::Handler::FCGI=HASH(0x55aa96553ba8)) called at /usr/share/perl5/Plack/Runner.pm line 277#012#011Plack::runner::run(RT::PlackRunner=HASH(0x55aa8e2e61c0)) called at /usr/share/request-tracker4/lib/RT/PlackRunner.pm line 141#012#011eval {…} called at /usr/share/request-tracker4/lib/RT/PlackRunner.pm line 141#012#011RT::PlackRunner::run(RT::PlackRunner=HASH(0x55aa8e2e61c0)) called at /usr/share/request-tracker4/libexec/rt-server.fcgi line 162
Mar 20 07:28:42 rt1 RT: [12498] Couldn’t create a ticket: Internal Error: Couldn’t execute the query 'INSERT INTO Tickets (Due, Priority, LastUpdated, Created, Started, Creator, Queue, Type, Status, SLA, Resolved, LastUpdatedBy, Subject, Starts) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'Incorrect string value: ‘\xF0\x9F\x92\xAC U…’ for column ‘Subject’ at row 1
Mar 20 07:28:42 rt1 RT: [12498] Ticket creation failed: [SUSPECT] - [:speech_balloon: Ungelesene Nachricht von Mike] from: xxxx: Ticket could not be created due to an internal error

Best Regards,

Guy

By default, MySQL can only store UTF8 characters that are 3 bytes wide. The little speech baloon with elipses that comes before ‘Ungelesene’ is 4 bytes, so you’re getting a database error.

we also recognized this, but as these characters are allowed and this is the default database structure, so maybe change the default database structure?