Uploaded image for project: 'MariaDB ColumnStore'
  1. MariaDB ColumnStore
  2. MCOL-4955

[cross-engine] insert into innodbtable select * columnstoretable will not be replicated.

    XMLWordPrintable

Details

    Description

      to reproduce:

      follow

      Docker-Compose Cluster Instructions

      https://github.com/mariadb-corporation/mariadb-enterprise-columnstore-docker

      docker exec -it mcs1 bash
      mariadb

       create database if not exists d1;
       use d1;
       create table if not exists t1 (id int);
       create table if not exists t2 (id int) engine=columnstore;
       truncate table t1;
       truncate table t2;
       insert into t2 (id) values(1);
       insert into t1 select * from t2;
       select * from t1;
      

      MariaDB [d1]>  select * from t1;
      +------+
      | id   |
      +------+
      |    1 |
      +------+
      1 row in set (0.001 sec)
      

      but on mcs2

      docker exec -it mcs1 bash
      mariadb

      MariaDB [d1]> select * from t1;
      Empty set (0.000 sec)

      It works with adding "limit" clause.

      with "limit" cluase, it will be written into binlog as in binlogformat ROW

       #220105  8:18:39 server id 4  end_log_pos 1149 CRC32 0x5ee8511d         GTID 0-4-62 trans
      /*!100001 SET @@session.gtid_seq_no=62*//*!*/;
      START TRANSACTION
      /*!*/;
      # at 1149
      # at 1212
      #220105  8:18:39 server id 4  end_log_pos 1212 CRC32 0xc036c4b3         Annotate_rows:
      #Q> insert into t1 select * from t2 limit 10
      #220105  8:18:39 server id 4  end_log_pos 1255 CRC32 0xd5cbf0e7         Table_map: `d1`.`t1` mapped to number 20
      # at 1255
      #220105  8:18:39 server id 4  end_log_pos 1293 CRC32 0x3b885426         Write_rows: table id 20 flags: STMT_END_F
       
      BINLOG '
      X1TVYRMEAAAAKwAAAOcEAAAAABQAAAAAAAEAAmQxAAJ0MQABAwAB5/DL1Q==
      X1TVYRcEAAAAJgAAAA0FAAAAABQAAAAAAAEAAf/+AQAAACZUiDs=
      '/*!*/;
      ### INSERT INTO `d1`.`t1`
      ### SET
      ###   @1=1 /* INT meta=0 nullable=1 is_null=0 */
      # Number of rows: 1
      # at 1293
      #220105  8:18:39 server id 4  end_log_pos 1324 CRC32 0x9053a62c         Xid = 58
      COMMIT/*!*/;
      DELIMITER ;
      # End of log file
      ROLLBACK /* added by mysqlbinlog */;
      

      Without as statement

      /*!100001 SET @@session.gtid_seq_no=61*//*!*/;
      START TRANSACTION
      /*!*/;
      # at 980
      #220105  8:07:19 server id 4  end_log_pos 1076 CRC32 0xaff93e02         Query   thread_id=9     exec_time=2     error_code=0
      SET TIMESTAMP=1641370039/*!*/;
      insert into t1 select * from t2
      /*!*/;
      # at 1076
      #220105  8:07:19 server id 4  end_log_pos 1107 CRC32 0xef892fc5         Xid = 48
      COMMIT/*!*/;
      

      Attachments

        Issue Links

          Activity

            People

              leonid.fedorov Leonid Fedorov
              Richard Richard Stracke
              Votes:
              1 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.