diff options
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl/0001-Use-API-function-for-reconnect.patch')
-rw-r--r-- | meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl/0001-Use-API-function-for-reconnect.patch | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl/0001-Use-API-function-for-reconnect.patch b/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl/0001-Use-API-function-for-reconnect.patch new file mode 100644 index 0000000000..60d88c3d1a --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl/0001-Use-API-function-for-reconnect.patch @@ -0,0 +1,53 @@ +From edb6b202b7e233864aa5dd84532646c50097b0b8 Mon Sep 17 00:00:00 2001 +From: Mingli Yu <mingli.yu@windriver.com> +Date: Mon, 4 Mar 2019 00:49:17 -0800 +Subject: [PATCH] Use API function for reconnect + +For configuring reconnect functionality use standard API function +MYSQL_OPT_RECONNECT instead of direct modification of internal structures +which does not work for MariaDB. Fixes compilation with MariaDB 10.2.6+. + +Upstream-Status: Backport [https://github.com/perl5-dbi/DBD-mysql/commit/0b1884f4153d3de0a91bae4d3b3cc1771ffdf4f3] + +Signed-off-by: Mingli Yu <mingli.yu@windriver.com> +--- + dbdimp.c | 16 ++++++++++------ + 1 file changed, 10 insertions(+), 6 deletions(-) + +diff --git a/dbdimp.c b/dbdimp.c +index 9b8b313..3bed213 100644 +--- a/dbdimp.c ++++ b/dbdimp.c +@@ -1979,6 +1979,16 @@ MYSQL *mysql_dr_connect( + + if (result) + { ++ /* ++ we turn off Mysql's auto reconnect and handle re-connecting ourselves ++ so that we can keep track of when this happens. ++ */ ++#if MYSQL_VERSION_ID >= 50013 ++ my_bool reconnect = FALSE; ++ mysql_options(result, MYSQL_OPT_RECONNECT, &reconnect); ++#else ++ result->reconnect = 0; ++#endif + #if MYSQL_VERSION_ID >=SERVER_PREPARE_VERSION + /* connection succeeded. */ + /* imp_dbh == NULL when mysql_dr_connect() is called from mysql.xs +@@ -1992,12 +2002,6 @@ MYSQL *mysql_dr_connect( + imp_dbh->async_query_in_flight = NULL; + } + #endif +- +- /* +- we turn off Mysql's auto reconnect and handle re-connecting ourselves +- so that we can keep track of when this happens. +- */ +- result->reconnect=0; + } + else { + /* +-- +2.17.1 + |