Skip to content

Commit 3a91af9

Browse files
author
Sergei Golubchik
committed
MDEV-6647 MariaDB CLI client doesnt show CREATE INDEX progress
SQLCOM_CREATE_INDEX was missing CF_REPORT_PROGRESS flag
1 parent 30d7860 commit 3a91af9

File tree

2 files changed

+20
-2
lines changed

2 files changed

+20
-2
lines changed

sql/sql_parse.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -281,7 +281,7 @@ void init_update_queries(void)
281281
sql_command_flags[SQLCOM_CREATE_TABLE]= CF_CHANGES_DATA | CF_REEXECUTION_FRAGILE |
282282
CF_AUTO_COMMIT_TRANS | CF_REPORT_PROGRESS |
283283
CF_CAN_GENERATE_ROW_EVENTS;
284-
sql_command_flags[SQLCOM_CREATE_INDEX]= CF_CHANGES_DATA | CF_AUTO_COMMIT_TRANS;
284+
sql_command_flags[SQLCOM_CREATE_INDEX]= CF_CHANGES_DATA | CF_AUTO_COMMIT_TRANS | CF_REPORT_PROGRESS;
285285
sql_command_flags[SQLCOM_ALTER_TABLE]= CF_CHANGES_DATA | CF_WRITE_LOGS_COMMAND |
286286
CF_AUTO_COMMIT_TRANS | CF_REPORT_PROGRESS |
287287
CF_INSERTS_DATA;

tests/mysql_client_test.c

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18707,13 +18707,31 @@ static void test_progress_reporting()
1870718707
rc= mysql_query(conn, "insert into t1 (f2) select f2 from t2");
1870818708
myquery(rc);
1870918709
}
18710-
rc= mysql_query(conn, "alter table t1 add f1 int primary key auto_increment, add key (f2), order by f2");
18710+
18711+
progress_stage= progress_max_stage= progress_count= 0;
18712+
rc= mysql_query(conn, "alter table t1 add f1 int primary key auto_increment, order by f2");
1871118713
myquery(rc);
1871218714
if (!opt_silent)
1871318715
printf("Got progress_count: %u stage: %u max_stage: %u\n",
1871418716
progress_count, progress_stage, progress_max_stage);
1871518717
DIE_UNLESS(progress_count > 0 && progress_stage >=2 && progress_max_stage == 3);
18718+
18719+
progress_stage= progress_max_stage= progress_count= 0;
18720+
rc= mysql_query(conn, "create index f2 on t1 (f2)");
1871618721
myquery(rc);
18722+
if (!opt_silent)
18723+
printf("Got progress_count: %u stage: %u max_stage: %u\n",
18724+
progress_count, progress_stage, progress_max_stage);
18725+
DIE_UNLESS(progress_count > 0 && progress_stage >=2 && progress_max_stage == 2);
18726+
18727+
progress_stage= progress_max_stage= progress_count= 0;
18728+
rc= mysql_query(conn, "drop index f2 on t1");
18729+
myquery(rc);
18730+
if (!opt_silent)
18731+
printf("Got progress_count: %u stage: %u max_stage: %u\n",
18732+
progress_count, progress_stage, progress_max_stage);
18733+
DIE_UNLESS(progress_count > 0 && progress_stage >=2 && progress_max_stage == 2);
18734+
1871718735
rc= mysql_query(conn, "set @@global.progress_report_time=@save");
1871818736
myquery(rc);
1871918737
mysql_close(conn);

0 commit comments

Comments
 (0)