rm -rf 88791 bin/mysqld --initialize-insecure --basedir=$PWD --datadir=$PWD/88791 bin/mysqld --no-defaults --log-bin --server-id=1 --binlog_format=ROW --basedir=$PWD --datadir=$PWD/88791 --core-file --socket=/tmp/mysql_ushastry.sock --port=3307 --log-error=$PWD/88791/log.err 2>&1 & -- Session 1 -- binlog_format IS ROW flush binary logs; create database gctest; use gctest; CREATE TABLE `t` ( `id` int(11) DEFAULT NULL, `j` json DEFAULT NULL, `gc` json GENERATED ALWAYS AS (json_array(`j`)) VIRTUAL); insert into t (id,j) values (1,'"abc"'); update t set j = '"def"' where id = 1; mysql> select * from t; +------+-------+---------+ | id | j | gc | +------+-------+---------+ | 1 | "def" | ["def"] | +------+-------+---------+ 1 row in set (0.00 sec) -- Session 2 [umshastr@hod03]/export/umesh/server/binaries/GABuilds/mysql-5.7.20: bin/mysqlbinlog 88791/hod03-bin.000002 --base64-output=DECODE-ROWS -v /*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/; /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/; DELIMITER /*!*/; # at 4 #171208 6:13:25 server id 1 end_log_pos 123 CRC32 0xc6812531 Start: binlog v 4, server v 5.7.20-log created 171208 6:13:25 # Warning: this binlog is either in use or was not closed properly. # at 123 #171208 6:13:25 server id 1 end_log_pos 154 CRC32 0x46f45eb1 Previous-GTIDs # [empty] # at 154 #171208 6:13:25 server id 1 end_log_pos 219 CRC32 0x2568032d Anonymous_GTID last_committed=0 sequence_number=1 rbr_only=no SET @@SESSION.GTID_NEXT= 'ANONYMOUS'/*!*/; # at 219 #171208 6:13:25 server id 1 end_log_pos 319 CRC32 0x37ad5e57 Query thread_id=3 exec_time=0 error_code=0 SET TIMESTAMP=1512710005/*!*/; SET @@session.pseudo_thread_id=3/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/; SET @@session.sql_mode=1436549152/*!*/; SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/; /*!\C utf8 *//*!*/; SET @@session.character_set_client=33,@@session.collation_connection=33,@@session.collation_server=8/*!*/; SET @@session.lc_time_names=0/*!*/; SET @@session.collation_database=DEFAULT/*!*/; create database gctest /*!*/; # at 319 #171208 6:13:46 server id 1 end_log_pos 384 CRC32 0xc67eb55b Anonymous_GTID last_committed=1 sequence_number=2 rbr_only=no SET @@SESSION.GTID_NEXT= 'ANONYMOUS'/*!*/; # at 384 #171208 6:13:46 server id 1 end_log_pos 593 CRC32 0xa04cfa4b Query thread_id=3 exec_time=0 error_code=0 use `gctest`/*!*/; SET TIMESTAMP=1512710026/*!*/; CREATE TABLE `t` ( `id` int(11) DEFAULT NULL, `j` json DEFAULT NULL, `gc` json GENERATED ALWAYS AS (json_array(`j`)) VIRTUAL) /*!*/; # at 593 #171208 6:13:46 server id 1 end_log_pos 658 CRC32 0x2f31808c Anonymous_GTID last_committed=2 sequence_number=3 rbr_only=yes /*!50718 SET TRANSACTION ISOLATION LEVEL READ COMMITTED*//*!*/; SET @@SESSION.GTID_NEXT= 'ANONYMOUS'/*!*/; # at 658 #171208 6:13:46 server id 1 end_log_pos 732 CRC32 0x48e7abf2 Query thread_id=3 exec_time=0 error_code=0 SET TIMESTAMP=1512710026/*!*/; BEGIN /*!*/; # at 732 #171208 6:13:46 server id 1 end_log_pos 782 CRC32 0x2d4303e4 Table_map: `gctest`.`t` mapped to number 219 # at 782 #171208 6:13:46 server id 1 end_log_pos 847 CRC32 0xffdfedaa Write_rows: table id 219 flags: STMT_END_F ### INSERT INTO `gctest`.`t` ### SET ### @1=1 ### @2='\x0c\x03abc' ### @3='\x02\x01\x00\x0b\x00\x0c\x07\x00\x03abc' # at 847 #171208 6:13:46 server id 1 end_log_pos 878 CRC32 0xaa1dfc8d Xid = 16 COMMIT/*!*/; # at 878 #171208 6:13:47 server id 1 end_log_pos 943 CRC32 0xd4a52295 Anonymous_GTID last_committed=3 sequence_number=4 rbr_only=yes /*!50718 SET TRANSACTION ISOLATION LEVEL READ COMMITTED*//*!*/; SET @@SESSION.GTID_NEXT= 'ANONYMOUS'/*!*/; # at 943 #171208 6:13:47 server id 1 end_log_pos 1017 CRC32 0xd5ad5bb8 Query thread_id=3 exec_time=0 error_code=0 SET TIMESTAMP=1512710027/*!*/; BEGIN /*!*/; # at 1017 #171208 6:13:47 server id 1 end_log_pos 1067 CRC32 0x6fc058f8 Table_map: `gctest`.`t` mapped to number 219 # at 1067 #171208 6:13:47 server id 1 end_log_pos 1163 CRC32 0xad12c6e0 Update_rows: table id 219 flags: STMT_END_F ### UPDATE `gctest`.`t` ### WHERE ### @1=1 ### @2='\x0c\x03abc' ### @3='\x02\x01\x00\x0b\x00\x0c\x07\x00\x03def' ### SET ### @1=1 ### @2='\x0c\x03def' ### @3='\x02\x01\x00\x0b\x00\x0c\x07\x00\x03def' # at 1163 #171208 6:13:47 server id 1 end_log_pos 1194 CRC32 0xae2e7602 Xid = 17 COMMIT/*!*/; SET @@SESSION.GTID_NEXT= 'AUTOMATIC' /* added by mysqlbinlog */ /*!*/; DELIMITER ; # End of log file /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/; /*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/; -- Session 1 mysql> drop database gctest; Query OK, 1 row affected (0.00 sec) -- Session 2 [umshastr@hod03]/export/umesh/server/binaries/GABuilds/mysql-5.7.20: bin/mysqlbinlog --stop-position=1194 88791/hod03-bin.000002 | bin/mysql -uroot -S /tmp/mysql_ushastry.sock mysql> use gctest Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> select * from t; +------+-------+---------+ | id | j | gc | +------+-------+---------+ | 1 | "def" | ["def"] | +------+-------+---------+ 1 row in set (0.00 sec)