pt-online-schema-change stop with error 1287 mysql The partition engine is deprecated

MySQL 5.7.21

pt-online-schema-change 3.0.6 [TABLE=“border: 0, cellpadding: 0, cellspacing: 0”]
[TR]
[TD]I’am facing this problem on running pt-online-schema-change in some tables of my database.

		All my database is using MYISAM engine and I can't change that right now.

		Is there something to workaround this error, or ignore it?

		The pt-online-schema-change command and output is below (The full output is attached):

		pt-online-schema-change --default-engine --execute --user=movi_arg --ask-pass --print --no-check-alter --nodrop-old-table --max-load=Threads_running=100 --critical-load=Threads_running=150 --alter "DROP PRIMARY KEY, ADD PRIMARY KEY (DATEDAY,DN_MRBTS,DN_LNBTS,DN_LNCEL,DN_MCC,DN_MNC,PERIOD_START_TIME)" D=nokia_oss_stats_4g_timbrasil_dum,t=lte_cell_avail,h=localhost
		Enter MySQL password:
		No slaves found. See --recursion-method if host XX has slaves.
		Not checking slave lag because no slaves were found and --check-slave-lag was not specified.
		Operation, tries, wait:
		analyze_table, 10, 1
		copy_rows, 10, 0.25
		create_triggers, 10, 1
		drop_triggers, 10, 1
		swap_tables, 10, 1
		update_foreign_keys, 10, 1
		Altering `nokia_oss_stats_4g_timbrasil_dum`.`lte_cell_avail`...
		Creating new table...

		CREATE TABLE `nokia_oss_stats_4g_timbrasil_dum`.`_lte_cell_avail_new` (
		`PERIOD_START_TIME` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
		`DATEDAY` date NOT NULL DEFAULT '0000-00-00',
		`PERIOD_DURATION` int(11) DEFAULT NULL,
		`DN_PLMN` char(9) NOT NULL DEFAULT '',
		`DN_MRBTS` int(11) NOT NULL DEFAULT '-1',
		`DN_LNBTS` int(11) NOT NULL DEFAULT '-1',
		`DN_LNCEL` int(11) NOT NULL DEFAULT '-1',
		`DN_MCC` int(11) NOT NULL DEFAULT '-1',
		`DN_MNC` int(11) NOT NULL DEFAULT '-1',
		`M8020C0` int(11) DEFAULT NULL,
		`M8020C1` int(11) DEFAULT NULL,
		`M8020C10` int(11) DEFAULT NULL,
		`M8020C11` int(11) DEFAULT NULL,
		`M8020C12` int(11) DEFAULT NULL,
		`M8020C2` int(11) DEFAULT NULL,
		`M8020C3` int(11) DEFAULT NULL,
		`M8020C4` int(11) DEFAULT NULL,
		`M8020C5` int(11) DEFAULT NULL,
		`M8020C6` int(11) DEFAULT NULL,
		`M8020C7` int(11) DEFAULT NULL,
		`M8020C8` int(11) DEFAULT NULL,
		`M8020C9` int(11) DEFAULT NULL,
		`netchart_count` int(11) DEFAULT '1',
		PRIMARY KEY (`DATEDAY`,`DN_PLMN`,`DN_MRBTS`,`DN_LNBTS`,`DN_LNCEL`,`DN_MCC`,`DN_MNC`,`PERIOD_START_TIME`),
		KEY `alarm_index` (`PERIOD_START_TIME`,`DN_MRBTS`,`DN_LNBTS`,`DN_LNCEL`)
		) DEFAULT CHARSET=latin1
		/*!50100 PARTITION BY RANGE (to_days(dateday))
		(PARTITION p20180121 VALUES LESS THAN (737081) ENGINE = MyISAM,
		PARTITION p20180122 VALUES LESS THAN (737082) ENGINE = MyISAM,
		PARTITION p20180123 VALUES LESS THAN (737083) ENGINE = MyISAM,
		PARTITION p20180124 VALUES LESS THAN (737084) ENGINE = MyISAM,
		PARTITION p20180125 VALUES LESS THAN (737085) ENGINE = MyISAM,
		PARTITION p20180126 VALUES LESS THAN (737086) ENGINE = MyISAM,
		PARTITION p20180127 VALUES LESS THAN (737087) ENGINE = MyISAM,
		PARTITION p20180128 VALUES LESS THAN (737088) ENGINE = MyISAM,
		PARTITION p20180129 VALUES LESS THAN (737089) ENGINE = MyISAM,
		PARTITION p20180130 VALUES LESS THAN (737090) ENGINE = MyISAM,
		PARTITION p20180131 VALUES LESS THAN (737091) ENGINE = MyISAM,
		PARTITION p20180201 VALUES LESS THAN (737092) ENGINE = MyISAM,
		PARTITION p20180202 VALUES LESS THAN (737093) ENGINE = MyISAM,
		PARTITION p20180203 VALUES LESS THAN (737094) ENGINE = MyISAM,
		PARTITION p20180204 VALUES LESS THAN (737095) ENGINE = MyISAM,
		PARTITION p20180205 VALUES LESS THAN (737096) ENGINE = MyISAM,
		PARTITION p20180206 VALUES LESS THAN (737097) ENGINE = MyISAM,
		PARTITION p20180207 VALUES LESS THAN (737098) ENGINE = MyISAM,
		PARTITION p20180208 VALUES LESS THAN (737099) ENGINE = MyISAM,
		PARTITION p20180209 VALUES LESS THAN (737100) ENGINE = MyISAM,
		PARTITION p20180210 VALUES LESS THAN (737101) ENGINE = MyISAM) */
		Created new table nokia_oss_stats_4g_timbrasil_dum._lte_cell_avail_new OK.
		Altering new table...
		ALTER TABLE `nokia_oss_stats_4g_timbrasil_dum`.`_lte_cell_avail_new` DROP PRIMARY KEY, ADD PRIMARY KEY (DATEDAY,DN_MRBTS,DN_LNBTS,DN_LNCEL,DN_MCC,DN_MNC,PERIOD_START_TIME)
		Altered `nokia_oss_stats_4g_timbrasil_dum`.`_lte_cell_avail_new` OK.
		2018-02-06T16:43:34 Creating triggers...
		2018-02-06T16:43:34 Created triggers OK.
		2018-02-06T16:43:34 Copying approximately 22975510 rows...

		Copying rows caused a MySQL error 1287:
		Level: Warning
		Code: 1287
		Message: The partition engine, used by table 'nokia_oss_stats_4g_timbrasil_dum._lte_cell_avail_new', is deprecated and will be removed in a future release. Please use native partitioning instead.[/TD]
	[/TR]

[/TABLE]

pt-online-schema_Error.txt (13.5 KB)

Hello,

It is not a pt-online-schema-change issue. MySQL 8 is around the corner and partitioning using MyISAM will be deprecated.
See https://dev.mysql.com/worklog/task/?id=8971

Regards

But I’am using MySQL 5.7.21 and isn’t deprecated yet.
I really have to use MyISAM.

I’ve added a workaround in the Jira ticket: https://jira.percona.com/browse/PT-1480