02.10.2013 18:13, Sergei Golubchik пишет:
Hi, Sanja!
On Oct 02, [email protected] wrote:
=== modified file 'client/mysqltest.cc'
--- a/client/mysqltest.cc 2013-07-21 14:39:19 +0000
+++ b/client/mysqltest.cc 2013-10-02 13:54:55 +0000
@@ -5648,6 +5648,10 @@ void safe_connect(MYSQL* mysql, const ch
verbose_msg("Connecting to server %s:%d (socket %s) as '%s'"
", connection '%s', attempt %d ...",
host, port, sock, user, name, failed_attempts);
+
+ mysql_options(mysql, MYSQL_OPT_CONNECT_ATTR_RESET, 0);
+ mysql_options4(mysql, MYSQL_OPT_CONNECT_ATTR_ADD,
+ "program_name", "mysqltest");
Did you test connecting without connection attributes?
e.g. 5.5 client and 10.0 server?
and mysql-5.5 client? And mysql-5.6 client?
please do, at least manually
I tested it works (attributes are compatible and if they are not
supported it does not prevent other functions).
while(!mysql_real_connect(mysql, host,user, pass, db, port, sock,
CLIENT_MULTI_STATEMENTS |
CLIENT_REMEMBER_OPTIONS))
{
=== modified file 'include/mysql.h'
--- a/include/mysql.h 2013-07-18 14:46:57 +0000
+++ b/include/mysql.h 2013-10-02 13:54:55 +0000
@@ -557,6 +557,8 @@ int STDCALL mysql_list_proce
int status);
int STDCALL mysql_options(MYSQL *mysql,enum mysql_option option,
const void *arg);
+int STDCALL mysql_options4(MYSQL *mysql,enum mysql_option option,
+ const void *arg1, const void *arg2);
This is pretty silly, I'd rather have
mysql_optionv(MYSQL *mysql, enum mysql_option option, ...)
or even (redefining the existing function):
mysql_option(MYSQL *mysql, enum mysql_option option, ...)
but we're copying MySQL here, so we don't have much of a choice
void STDCALL mysql_free_result(MYSQL_RES *result);
int STDCALL mysql_free_result_start(MYSQL_RES *result);
int STDCALL mysql_free_result_cont(MYSQL_RES *result, int status);
=== modified file 'sql/sql_acl.cc'
--- a/sql/sql_acl.cc 2013-09-21 08:14:42 +0000
+++ b/sql/sql_acl.cc 2013-10-02 13:54:55 +0000
@@ -8570,7 +8628,13 @@ static ulong parse_client_handshake_pack
mpvio->acl_user->plugin= old_password_plugin_name;
}
}
-
+
+ if (db &&
Why do you check for db being not NULL?
removed and its works.
+ (thd->client_capabilities & CLIENT_CONNECT_ATTRS) &&
+ read_client_connect_attrs(&next_field, ((char *)net->read_pos) + pkt_len,
+ mpvio->thd->charset()))
+ return packet_error;
+
/*
if the acl_user needs a different plugin to authenticate
(specified in GRANT ... AUTHENTICATED VIA plugin_name ..)
=== modified file 'sql/sys_vars.cc'
--- a/sql/sys_vars.cc 2013-09-21 08:14:42 +0000
+++ b/sql/sys_vars.cc 2013-10-02 13:54:55 +0000
@@ -71,6 +71,7 @@
#define export /* not static */
#ifdef WITH_PERFSCHEMA_STORAGE_ENGINE
+#ifndef EMBEDDED_LIBRARY
Why is this?
removed (it actually caused bug)
The big question is if embedded does not support performance schema
should we remove all performance schema control variables?
static Sys_var_mybool Sys_pfs_enabled(
"performance_schema",
Regards,
Sergei
_______________________________________________
Mailing list: https://launchpad.net/~maria-developers
Post to : [email protected]
Unsubscribe : https://launchpad.net/~maria-developers
More help : https://help.launchpad.net/ListHelp