config root man

Current Path : /home/usr.opt/mysql57/mysql-test/suite/x/r/

FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64
Upload File :
Current File : /home/usr.opt/mysql57/mysql-test/suite/x/r/crud_myisam_memory.result

SET @start_global_value = @@global.default_storage_engine;
SELECT @start_global_value;
@start_global_value
InnoDB
SET @@global.default_storage_engine = myisam;
install plugin mysqlx soname "mysqlx.so";
call mtr.add_suppression("Plugin mysqlx reported: .Failed at SSL configuration: .SSL context is not usable without certificate and private key..");
call mtr.add_suppression("Plugin mysqlx reported: .SSL_CTX_load_verify_locations failed.");
RUN DROP DATABASE IF EXISTS xplugintest

0 rows affected
RUN CREATE DATABASE xplugintest

1 rows affected
RUN USE xplugintest

0 rows affected
RUN CREATE TABLE `table1` (
  `doc` VARCHAR(100) DEFAULT NULL,
  `_id` INT AUTO_INCREMENT PRIMARY KEY
) ENGINE=memory

0 rows affected
send Mysqlx.Sql.StmtExecute {
  stmt: "create_collection"
  args {
    type: SCALAR
    scalar {
      type: V_STRING
      v_string {
        value: "xplugintest"
      }
    }
  }
  args {
    type: SCALAR
    scalar {
      type: V_STRING
      v_string {
        value: "table2"
      }
    }
  }
  namespace: "xplugin"
}


command ok
Namespace 'xplugin' is deprecated, please use 'mysqlx' instead
Insert multiple rows into a Document column : myisam table
send Mysqlx.Crud.Insert {
  collection {
    name: "table2"
    schema: "xplugintest"
  }
  data_model: DOCUMENT
  row {
    field {
      type: LITERAL
      literal {
        type: V_STRING
        v_string {
          value: "\n{\n         \"_id\": \"1\",\n         \"name\": \"Omar Bras\", \"id\": \"1\"\n}"
        }
      }
    }
  }
  row {
    field {
      type: LITERAL
      literal {
        type: V_STRING
        v_string {
          value: "\n{\n         \"_id\": \"2\",\n         \"name\": \"Omar Mex\", \"id\": \"2\"\n}"
        }
      }
    }
  }
}


2 rows affected
Records: 2  Duplicates: 0  Warnings: 0
Insert into memory table
send Mysqlx.Crud.Insert {
  collection {
    name: "table1"
    schema: "xplugintest"
  }
  data_model: TABLE
  projection {
    name: "_id"
  }
  projection {
    name: "doc"
  }
  row {
    field {
      type: LITERAL
      literal {
        type: V_SINT
        v_signed_int: 10
      }
    }
    field {
      type: LITERAL
      literal {
        type: V_STRING
        v_string {
          value: "Omar Bras"
        }
      }
    }
  }
  row {
    field {
      type: LITERAL
      literal {
        type: V_SINT
        v_signed_int: 11
      }
    }
    field {
      type: LITERAL
      literal {
        type: V_STRING
        v_string {
          value: "Omar Mex"
        }
      }
    }
  }
}


2 rows affected
last insert id: 11
Records: 2  Duplicates: 0  Warnings: 0
RUN SELECT * FROM xplugintest.table2
doc	_id
{"id": "1", "_id": "1", "name": "Omar Bras"}	1
{"id": "2", "_id": "2", "name": "Omar Mex"}	2
0 rows affected
RUN SELECT * FROM xplugintest.table1
doc	_id
Omar Bras	10
Omar Mex	11
0 rows affected
"Index with  unique(true), index column NOT NULL (true)":myisam table
send Mysqlx.Sql.StmtExecute {
  stmt: "create_collection_index"
  args {
    type: SCALAR
    scalar {
      type: V_STRING
      v_string {
        value: "xplugintest"
      }
    }
  }
  args {
    type: SCALAR
    scalar {
      type: V_STRING
      v_string {
        value: "table2"
      }
    }
  }
  args {
    type: SCALAR
    scalar {
      type: V_STRING
      v_string {
        value: "name_index"
      }
    }
  }
  args {
    type: SCALAR
    scalar {
      type: V_BOOL
      v_bool: true
    }
  }
  args {
    type: SCALAR
    scalar {
      type: V_STRING
      v_string {
        value: "$.name"
      }
    }
  }
  args {
    type: SCALAR
    scalar {
      type: V_STRING
      v_string {
        value: "TEXT(50)"
      }
    }
  }
  args {
    type: SCALAR
    scalar {
      type: V_BOOL
      v_bool: true
    }
  }
  namespace: "xplugin"
}


command ok
RUN SHOW CREATE TABLE xplugintest.table2
Table	Create Table
table2	CREATE TABLE `table2` (
  `doc` json DEFAULT NULL,
  `_id` varchar(32) GENERATED ALWAYS AS (json_unquote(json_extract(`doc`,'$._id'))) STORED NOT NULL,
  `$ix_t50_r_2BAA686C5604372BA51E965E6346198F5072C3D7` text GENERATED ALWAYS AS (json_unquote(json_extract(`doc`,'$.name'))) VIRTUAL NOT NULL,
  PRIMARY KEY (`_id`),
  UNIQUE KEY `name_index` (`$ix_t50_r_2BAA686C5604372BA51E965E6346198F5072C3D7`(50))
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
0 rows affected
RUN SHOW CREATE TABLE xplugintest.table1
Table	Create Table
table1	CREATE TABLE `table1` (
  `doc` varchar(100) DEFAULT NULL,
  `_id` int(11) NOT NULL AUTO_INCREMENT,
  PRIMARY KEY (`_id`)
) ENGINE=MEMORY AUTO_INCREMENT=12 DEFAULT CHARSET=latin1
0 rows affected
RUN SELECT * FROM xplugintest.table2
doc	_id	$ix_t50_r_2BAA686C5604372BA51E965E6346198F5072C3D7
{"id": "1", "_id": "1", "name": "Omar Bras"}	1	Omar Bras
{"id": "2", "_id": "2", "name": "Omar Mex"}	2	Omar Mex
0 rows affected
RUN SELECT * FROM xplugintest.table1
doc	_id
Omar Bras	10
Omar Mex	11
0 rows affected
Update - myisam table
send Mysqlx.Crud.Update {
  collection {
    name: "table2"
    schema: "xplugintest"
  }
  data_model: DOCUMENT
  criteria {
    type: OPERATOR
    operator {
      name: "=="
      param {
        type: IDENT
        identifier {
          name: "_id"
        }
      }
      param {
        type: LITERAL
        literal {
          type: V_SINT
          v_signed_int: 2
        }
      }
    }
  }
  operation {
    source {
      document_path {
        type: MEMBER
        value: "name"
      }
    }
    operation: ITEM_SET
    value {
      type: LITERAL
      literal {
        type: V_STRING
        v_string {
          value: "\"Omar Argentina\""
        }
      }
    }
  }
}


1 rows affected
Rows matched: 1  Changed: 1  Warnings: 0
Update value - memory table
send Mysqlx.Crud.Update {
  collection {
    name: "table1"
    schema: "xplugintest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "=="
      param {
        type: IDENT
        identifier {
          name: "_id"
        }
      }
      param {
        type: LITERAL
        literal {
          type: V_SINT
          v_signed_int: 10
        }
      }
    }
  }
  operation {
    source {
      name: "doc"
    }
    operation: SET
    value {
      type: LITERAL
      literal {
        type: V_STRING
        v_string {
          value: "Omar Argentina"
        }
      }
    }
  }
}


1 rows affected
Rows matched: 1  Changed: 1  Warnings: 0
RUN SHOW CREATE TABLE xplugintest.table2
Table	Create Table
table2	CREATE TABLE `table2` (
  `doc` json DEFAULT NULL,
  `_id` varchar(32) GENERATED ALWAYS AS (json_unquote(json_extract(`doc`,'$._id'))) STORED NOT NULL,
  `$ix_t50_r_2BAA686C5604372BA51E965E6346198F5072C3D7` text GENERATED ALWAYS AS (json_unquote(json_extract(`doc`,'$.name'))) VIRTUAL NOT NULL,
  PRIMARY KEY (`_id`),
  UNIQUE KEY `name_index` (`$ix_t50_r_2BAA686C5604372BA51E965E6346198F5072C3D7`(50))
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
0 rows affected
RUN SHOW CREATE TABLE xplugintest.table1
Table	Create Table
table1	CREATE TABLE `table1` (
  `doc` varchar(100) DEFAULT NULL,
  `_id` int(11) NOT NULL AUTO_INCREMENT,
  PRIMARY KEY (`_id`)
) ENGINE=MEMORY AUTO_INCREMENT=12 DEFAULT CHARSET=latin1
0 rows affected
RUN SELECT JSON_EXTRACT(doc,'$.name') FROM xplugintest.table2
JSON_EXTRACT(doc,'$.name')
"Omar Bras"
"\"Omar Argentina\""
0 rows affected
RUN SELECT * FROM xplugintest.table2
doc	_id	$ix_t50_r_2BAA686C5604372BA51E965E6346198F5072C3D7
{"id": "1", "_id": "1", "name": "Omar Bras"}	1	Omar Bras
{"id": "2", "_id": "2", "name": "\"Omar Argentina\""}	2	"Omar Argentina"
0 rows affected
RUN SELECT * FROM xplugintest.table1
doc	_id
Omar Argentina	10
Omar Mex	11
0 rows affected
Delete with == operator : myisam table
send Mysqlx.Crud.Delete {
  collection {
    name: "table2"
    schema: "xplugintest"
  }
  data_model: DOCUMENT
  criteria {
    type: OPERATOR
    operator {
      name: "=="
      param {
        type: IDENT
        identifier {
          name: "_id"
        }
      }
      param {
        type: LITERAL
        literal {
          type: V_SINT
          v_signed_int: 2
        }
      }
    }
  }
}


1 rows affected
Delete with == operator : memory table
send Mysqlx.Crud.Delete {
  collection {
    name: "table1"
    schema: "xplugintest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "=="
      param {
        type: IDENT
        identifier {
          name: "_id"
        }
      }
      param {
        type: LITERAL
        literal {
          type: V_SINT
          v_signed_int: 11
        }
      }
    }
  }
}


1 rows affected
RUN SELECT JSON_EXTRACT(doc,'$.name') FROM xplugintest.table2
JSON_EXTRACT(doc,'$.name')
"Omar Bras"
0 rows affected
RUN SELECT * FROM xplugintest.table2
doc	_id	$ix_t50_r_2BAA686C5604372BA51E965E6346198F5072C3D7
{"id": "1", "_id": "1", "name": "Omar Bras"}	1	Omar Bras
0 rows affected
RUN SELECT * FROM xplugintest.table1
doc	_id
Omar Argentina	10
0 rows affected
insert : myisam table
send Mysqlx.Crud.Insert {
  collection {
    name: "table2"
    schema: "xplugintest"
  }
  data_model: DOCUMENT
  row {
    field {
      type: LITERAL
      literal {
        type: V_STRING
        v_string {
          value: "\n{\n         \"_id\": \"3\",\n         \"name\": \"Omar Peru\", \"id\": \"3\"\n}"
        }
      }
    }
  }
}


1 rows affected
insert : memory table
send Mysqlx.Crud.Insert {
  collection {
    name: "table1"
    schema: "xplugintest"
  }
  data_model: TABLE
  projection {
    name: "_id"
  }
  projection {
    name: "doc"
  }
  row {
    field {
      type: LITERAL
      literal {
        type: V_SINT
        v_signed_int: 12
      }
    }
    field {
      type: LITERAL
      literal {
        type: V_STRING
        v_string {
          value: "Omar Peru"
        }
      }
    }
  }
}


1 rows affected
last insert id: 12
# Insert fail due to non unique _id doc member: myisam table
send Mysqlx.Crud.Insert {
  collection {
    name: "table2"
    schema: "xplugintest"
  }
  data_model: DOCUMENT
  row {
    field {
      type: LITERAL
      literal {
        type: V_STRING
        v_string {
          value: "\n{\n         \"_id\": \"1\",\n         \"name\": \"Omar Colombia\", \"id\": \"3\"\n}"
        }
      }
    }
  }
}

Got expected error: Document contains a field value that is not unique but required to be (code 5116)
# Insert fail due to non unique _id doc member: memory table
send Mysqlx.Crud.Insert {
  collection {
    name: "table1"
    schema: "xplugintest"
  }
  data_model: TABLE
  projection {
    name: "_id"
  }
  projection {
    name: "doc"
  }
  row {
    field {
      type: LITERAL
      literal {
        type: V_SINT
        v_signed_int: 10
      }
    }
    field {
      type: LITERAL
      literal {
        type: V_STRING
        v_string {
          value: "Omar Colombia"
        }
      }
    }
  }
}

Got expected error: Duplicate entry '10' for key 'PRIMARY' (code 1062)
RUN SELECT * FROM xplugintest.table2
doc	_id	$ix_t50_r_2BAA686C5604372BA51E965E6346198F5072C3D7
{"id": "1", "_id": "1", "name": "Omar Bras"}	1	Omar Bras
{"id": "3", "_id": "3", "name": "Omar Peru"}	3	Omar Peru
0 rows affected
RUN SELECT * FROM xplugintest.table1
doc	_id
Omar Argentina	10
Omar Peru	12
0 rows affected
Mysqlx.Ok {
  msg: "bye!"
}
ok
DROP DATABASE IF EXISTS xplugintest;
UNINSTALL PLUGIN mysqlx;
SET @@global.default_storage_engine = @start_global_value;
SELECT @@global.default_storage_engine;
@@global.default_storage_engine
InnoDB

Man Man