DROP TABLE IF EXISTS t1;
#
# Bug#58147: ALTER TABLE w/ TRUNCATE PARTITION fails
#            but the statement is written to binlog
#
CREATE TABLE t1(id INT)
PARTITION BY RANGE (id)
(PARTITION p0 VALUES LESS THAN (100),
PARTITION pmax VALUES LESS THAN (MAXVALUE));
INSERT INTO t1 VALUES (1), (10), (100), (1000);
ALTER TABLE t1 TRUNCATE PARTITION p1;
ERROR HY000: Unknown partition 'p1' in table 't1'
ALTER TABLE t1 DROP PARTITION p1;
ERROR HY000: Wrong partition name or partition list
# No error returned, output in table format instead:
ALTER TABLE t1 ANALYZE PARTITION p1;
Table	Op	Msg_type	Msg_text
test.t1	analyze	error	Wrong partition name or partition list
ALTER TABLE t1 CHECK PARTITION p1;
Table	Op	Msg_type	Msg_text
test.t1	check	error	Wrong partition name or partition list
ALTER TABLE t1 OPTIMIZE PARTITION p1;
Table	Op	Msg_type	Msg_text
test.t1	optimize	error	Wrong partition name or partition list
ALTER TABLE t1 REPAIR PARTITION p1;
Table	Op	Msg_type	Msg_text
test.t1	repair	error	Wrong partition name or partition list
ALTER TABLE t1 ANALYZE PARTITION p0;
Table	Op	Msg_type	Msg_text
test.t1	analyze	status	OK
ALTER TABLE t1 CHECK PARTITION p0;
Table	Op	Msg_type	Msg_text
test.t1	check	status	OK
ALTER TABLE t1 OPTIMIZE PARTITION p0;
Table	Op	Msg_type	Msg_text
test.t1	optimize	status	OK
ALTER TABLE t1 REPAIR PARTITION p0;
Table	Op	Msg_type	Msg_text
test.t1	repair	status	OK
ALTER TABLE t1 TRUNCATE PARTITION p0;
ALTER TABLE t1 DROP PARTITION p0;
include/show_binlog_events.inc
Log_name	Pos	Event_type	Server_id	End_log_pos	Info
master-bin.000001	#	Gtid	#	#	GTID #-#-#
master-bin.000001	#	Query	#	#	use `test`; ALTER TABLE t1 ANALYZE PARTITION p0
master-bin.000001	#	Gtid	#	#	GTID #-#-#
master-bin.000001	#	Query	#	#	use `test`; ALTER TABLE t1 OPTIMIZE PARTITION p0
master-bin.000001	#	Gtid	#	#	GTID #-#-#
master-bin.000001	#	Query	#	#	use `test`; ALTER TABLE t1 REPAIR PARTITION p0
master-bin.000001	#	Gtid	#	#	GTID #-#-#
master-bin.000001	#	Query	#	#	use `test`; ALTER TABLE t1 TRUNCATE PARTITION p0
master-bin.000001	#	Gtid	#	#	GTID #-#-#
master-bin.000001	#	Query	#	#	use `test`; ALTER TABLE t1 DROP PARTITION p0
DROP TABLE t1;
