diff options
Diffstat (limited to 'client/mysqldump.c')
-rw-r--r-- | client/mysqldump.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/client/mysqldump.c b/client/mysqldump.c index 10f9739d637..88cf4447f18 100644 --- a/client/mysqldump.c +++ b/client/mysqldump.c @@ -2524,7 +2524,9 @@ static uint dump_routines_for_db(char *db) char db_cl_name[MY_CS_NAME_SIZE]; int db_cl_altered= FALSE; - + // before 10.3 packages are not supported + uint upper_bound= mysql_get_server_version(mysql) >= 100300 ? + array_elements(routine_type) : 2; DBUG_ENTER("dump_routines_for_db"); DBUG_PRINT("enter", ("db: '%s'", db)); @@ -2554,7 +2556,7 @@ static uint dump_routines_for_db(char *db) fputs("\t<routines>\n", sql_file); /* 0, retrieve and dump functions, 1, procedures, etc. */ - for (i= 0; i < array_elements(routine_type); i++) + for (i= 0; i < upper_bound; i++) { my_snprintf(query_buff, sizeof(query_buff), "SHOW %s STATUS WHERE Db = '%s'", |