Ich würde ja im MySQL-Handbuch zur Funktion GROUP_CONCAT() nachlesen und die dortige Information berücksichtigen, dann braucht es auch keine Konvertierung in 1-Byte-Kodierungen nebst potentiellem Zeichenverlust.
Da konnte ich nichts für micht Geignetes herrauslesen.
Das steht nicht dort im Handbuch, aber beim Index müsste es erwähnt sein, dass bei seinen Längenbegrenzungen in Byte gezählt wird und dass bei UTF-8 3 Byte pro Zeichen veranschlagt werden, egal ob sie nun benötigt werden oder nicht.
Und siehe da, 1024 / 3 ist 341 und ein Rest-Byte.
Das erklärt einiges - jetzt wird's klar. Danke für die Ergänzung.