Bradley Grainger
Bradley Grainger
This is new in MySql.Data 8.0.22. See https://dev.mysql.com/doc/connector-net/en/connector-net-8-0-connection-options.html#connector-net-8-0-connection-options-classic. If `AllowLoadLocalInfile` is `true`, this option is ignored. If `AllowLoadLocalInfile` is `false` (the default), this option overrides it (to `true`) for the...
The final packet in a result set is an OK/EOF without `SERVER_MORE_RESULTS_EXISTS` flag. When this is read, MySqlConnector could know that the connection is no longer in use and call...
A failure to detect ProxySQL may result in connection resets failing or being inefficient; see https://github.com/mysql-net/MySqlConnector/issues/874#issuecomment-676360511. The default server version it uses is `5.5.30`; see https://proxysql.com/documentation/global-variables/#mysql-server_version. Determine whether it's beneficial...
If MySqlConnector sets the `ProtocolCapabilities.PreparedStatementMultiResults` (`CLIENT_PS_MULTI_RESULTS`) flag, then prepared `CALL` statements will automatically provide a extra result set (flagged with `ServerStatus.PsOutParams` = `SERVER_PS_OUT_PARAMS`) with the contents of the out parameters....
`MySqlDataReader.GetInt32(int ordinal)` is essentially implemented as `return (int) GetValue(ordinal);` This boxes the `int` as an object then unboxes it. It would be more efficient to return the `int` value directly...
Implements a lock-free connection pool based on npgsql's implementation, along with some potential optimisations (that need to be tested) for MySqlConnector-specific features, such more LIFO-like behaviour and recovering leaked `MySqlConnection`s.
From https://github.com/npgsql/npgsql/issues/1580 `EnlistTransaction(null)` should throw `InvalidOperationException` if the current transaction is still active, but should unenlist the connection from the transaction if the transaction has completed.
For #659 the fix in ce16109522bf4adb93f231b401b9aa150af31ad4 ignored all explicit `MySqlParameter.MySqlDbType` values and just used the inferred type from `MySqlParameter.Value.GetType()`. This is probably needlessly inefficient, in terms of runtime performance, and...
See example from @sebastienros here: https://github.com/sebastienros/MySqlConnector/commit/ffe984fcaff4f7571b19d75f5ae356c3f377c61c Also implement the optimisation to stagger probes into the pool from @roji: https://github.com/npgsql/npgsql/commit/19c436e41a64392c7e9a068882976880e2d3d96b#diff-33bb36ea0d45f66ae316561892d5b5a9R236
When `Utf8String` is released, consider how to support it. Possibilities: * Add `MySqlDataReader.GetUtf8String(int ordinal)` to read a `Utf8String` directly for string/JSON columns. * Allow `MySqlParameter.Value` to be `Utf8String` and serialise...