I don't think we need special "default collation" IDs.
After MDEV-33182, it works as follows:
- a. If the client sent a non-default collation ID, then the server uses this ID for @@collation_connection.
- b. If the client sent a compiled default collation ID (like 33 == utf8mb3_general_ci), then the server user @@character_set_collations to resolve @@collation_connection.
So the compiled default collation IDs already work as "default collation".
However, the comment added by MDEV-33182 suggests:
Perhaps eventually we should change (b) also to resolve non-default
|
collations according to @@character_set_collations. Clients that used to
|
send a non-default collation ID in the handshake packet will have to set
|
@@character_set_collations instead.
|
If we decide to go this way, we'll need something to allow the client to indicate
if it wants its collation ID to be processed by @@character_set_collations, or to be used as is.
Anyway, adding special collations IDs looks like over-engineering for me. I'd prefer some bit flag in the handshake header.
see the this comment in
MDEV-32975.I think that
MDEV-32966will solveMDEV-32975, but there's also another solution forMDEV-32975which doesn't includeMDEV-32966