Bug #86516 no begin/commit binlog event with memory engine table.
Submitted: 31 May 2017 7:10 Modified: 5 Jul 2017 11:16
Reporter: ashe sun (OCA) Email Updates:
Status: Can't repeat Impact on me:
None 
Category:MySQL Server: Memory storage engine Severity:S3 (Non-critical)
Version:mysql-5.6.23 OS:CentOS (6.5)
Assigned to: CPU Architecture:Any

[31 May 2017 7:10] ashe sun
Description:
something strange happened in the binlog file,there is no begin/commit event in the transaction 88993424. I just want  find a way to repeat it. why?

SET @@SESSION.GTID_NEXT= '778a84d6-5a1a-11e6-b298-44a842470a56:88993424'/*!*/;
# at 17377501
#170527 18:15:04 server id 462944532  end_log_pos 17377593 CRC32 0x57f7fb97     Query   thread_id=5     exec_time=0     error_code=0
SET TIMESTAMP=1495880104/*!*/;
DELETE FROM `cloud`.`op_lock`
/*!*/;
# at 17377593
#170527 18:15:04 server id 462944532  end_log_pos 17377855 CRC32 0xf47cf5a5     Rows_query
# insert into `cloud`.`op_lock` ( `key`,`mac`,`ip`,`thread`,`acquired_on`,`waiters` )  VALUES( 0x757365725f766d36323235,0x3430303537333831373032313132,0x55736572566d2d53636176656e6765722d31,0x31353837323138363430,'2017-05-27 10:15:04.0',1 )
# at 17377855
#170527 18:15:04 server id 462944532  end_log_pos 17377920 CRC32 0x96b15271     Table_map: `cloud`.`op_lock` mapped to number 74
# at 17377920
#170527 18:15:04 server id 462944532  end_log_pos 17378023 CRC32 0x84127814     Write_rows: table id 74 flags: STMT_END_F
### INSERT INTO `cloud`.`op_lock`
### SET
###   @1='user_vm6225' /* VARSTRING(384) meta=384 nullable=0 is_null=0 */
###   @2='40057381702112' /* VARSTRING(51) meta=51 nullable=0 is_null=0 */
###   @3='UserVm-Scavenger-1' /* STRING(120) meta=65144 nullable=0 is_null=0 */
###   @4='1587218640' /* VARSTRING(765) meta=765 nullable=0 is_null=0 */
###   @5=1495851304 /* TIMESTAMP(0) meta=0 nullable=0 is_null=0 */
###   @6=1 /* INT meta=0 nullable=0 is_null=0 */
# at 17378023
#170527 18:15:04 server id 462944532  end_log_pos 17378071 CRC32 0xd0ade0bf     GTID [commit=yes]
SET @@SESSION.GTID_NEXT= '778a84d6-5a1a-11e6-b298-44a842470a56:88993425'/*!*/;
# at 17378071
#170527 18:15:04 server id 462944532  end_log_pos 17378147 CRC32 0xa7f8d3b3     Query   thread_id=5     exec_time=0     error_code=0
SET TIMESTAMP=1495880104/*!*/;
SET @@session.time_zone='+08:00'/*!*/;
BEGIN
/*!*/;
# at 17378147
#170527 18:15:04 server id 462944532  end_log_pos 17378417 CRC32 0xde00c533     Rows_query
# insert into `cloud`.`op_lock` ( `key`,`mac`,`ip`,`thread`,`acquired_on`,`waiters` )  VALUES( 0x766d5f696e7374616e636536323235,0x3430303537333831373032313132,0x55736572566d2d53636176656e6765722d31,0x31353837323138363430,'2017-05-27 10:15:04.0',1 )
# at 17378417
#170527 18:15:04 server id 462944532  end_log_pos 17378482 CRC32 0xf7b0f510     Table_map: `cloud`.`op_lock` mapped to number 74
# at 17378482
#170527 18:15:04 server id 462944532  end_log_pos 17378589 CRC32 0xafd1cfe0     Write_rows: table id 74 flags: STMT_END_F
### INSERT INTO `cloud`.`op_lock`
### SET
###   @1='vm_instance6225' /* VARSTRING(384) meta=384 nullable=0 is_null=0 */
###   @2='40057381702112' /* VARSTRING(51) meta=51 nullable=0 is_null=0 */
###   @3='UserVm-Scavenger-1' /* STRING(120) meta=65144 nullable=0 is_null=0 */
###   @4='1587218640' /* VARSTRING(765) meta=765 nullable=0 is_null=0 */
###   @5=1495851304 /* TIMESTAMP(0) meta=0 nullable=0 is_null=0 */
###   @6=1 /* INT meta=0 nullable=0 is_null=0 */
# at 17378589
#170527 18:15:04 server id 462944532  end_log_pos 17378666 CRC32 0x43c4a7be     Query   thread_id=5     exec_time=0     error_code=0
SET TIMESTAMP=1495880104/*!*/;
COMMIT
................

How to repeat:
I do not  known how to repeat ,but something may be useful

Table definition:
binlog_format:row

mysql> show create table `cloud`.`op_lock`\G
*************************** 1. row ***************************
       Table: op_lock
Create Table: CREATE TABLE `op_lock` (
  `key` varchar(128) NOT NULL COMMENT 'primary key of the table',
  `mac` varchar(17) NOT NULL COMMENT 'management server id of the server that holds this lock',
  `ip` char(40) NOT NULL COMMENT 'name of the thread that holds this lock',
  `thread` varchar(255) NOT NULL COMMENT 'Thread id that acquired this lock',
  `acquired_on` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'Time acquired',
  `waiters` int(11) NOT NULL DEFAULT '0' COMMENT 'How many have the thread acquired this lock (reentrant)',
  PRIMARY KEY (`key`),
  UNIQUE KEY `key` (`key`),
  KEY `i_op_lock__mac_ip_thread` (`mac`,`ip`,`thread`)
) ENGINE=MEMORY DEFAULT CHARSET=utf8
0
[5 Jul 2017 11:16] MySQL Verification Team
Thank you for taking the time to report a problem.  Unfortunately you
are not using a current version of the product you reported a problem
with -- the problem might already be fixed. Please download
a new version from http://www.mysql.com/downloads/.

Also, there is no test case provided in the bug report and hence there
is nothing we can verify here.  If you are able to reproduce the bug
with one of the latest versions, please attach the exact reproducible
test case and change the version on this bug report to the version you
tested and change the status back to "Open".  Again, thank you for your
continued support of MySQL.