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_table_criteria_args.result

=============================================
CRUD TABLE CRITERIA ARGS SCENARIOS
=============================================

================================================================================
PREAMBLE
================================================================================
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.");
================================================================================
TEST START
================================================================================
RUN drop schema if exists xtest

0 rows affected
RUN create schema xtest

1 rows affected
RUN use xtest

0 rows affected
RUN create table mytable (id int primary key, name varchar(40), price decimal(5,2), info json)

0 rows affected
RUN insert into mytable values (1, 'banana', 1.20, '{"color": "yellow"}')

1 rows affected
RUN insert into mytable values (2, 'apple', 0.25, '{"color":"red"}')

1 rows affected
RUN insert into mytable values (3, 'tomato', 1.80, '{"color":"red"}')

1 rows affected
RUN insert into mytable values (4, 'mango', 3.14, '{"color":"green"}')

1 rows affected
RUN insert into mytable values (5, 'orange', 0.90, '{"color":"orange"}')

1 rows affected
RUN insert into mytable values (6, 'berry', null, '{"color":"orange"}')

1 rows affected
RUN SELECT * FROM xtest.mytable ORDER BY price
id	name	price	info
6	berry	null	{"color": "orange"}
2	apple	0.25	{"color": "red"}
5	orange	0.90	{"color": "orange"}
1	banana	1.20	{"color": "yellow"}
3	tomato	1.80	{"color": "red"}
4	mango	3.14	{"color": "green"}
0 rows affected
Find with == Operator and placeholder
send Mysqlx.Crud.Find {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "=="
      param {
        type: IDENT
        identifier {
          name: "name"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  args {
    type: V_STRING
    v_string {
      value: "tomato"
    }
  }
}

id	name	price	info
3	tomato	1.80	{"color": "red"}
command ok
Find with != Operator. placeholder and projection
send Mysqlx.Crud.Find {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  projection {
    source {
      type: IDENT
      identifier {
        name: "name"
      }
    }
  }
  criteria {
    type: OPERATOR
    operator {
      name: "=="
      param {
        type: IDENT
        identifier {
          name: "name"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  args {
    type: V_STRING
    v_string {
      value: "tomato"
    }
  }
}

name
tomato
command ok
Find with != Operator and placeholder
send Mysqlx.Crud.Find {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "!="
      param {
        type: IDENT
        identifier {
          name: "name"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  args {
    type: V_STRING
    v_string {
      value: "tomato"
    }
  }
}

id	name	price	info
1	banana	1.20	{"color": "yellow"}
2	apple	0.25	{"color": "red"}
4	mango	3.14	{"color": "green"}
5	orange	0.90	{"color": "orange"}
6	berry	null	{"color": "orange"}
command ok
Find with > Operator and placeholder
send Mysqlx.Crud.Find {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: ">"
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  args {
    type: V_DOUBLE
    v_double: 1.8
  }
}

id	name	price	info
4	mango	3.14	{"color": "green"}
command ok
Find with != Operator, placeholder and Order desc
send Mysqlx.Crud.Find {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "!="
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  order {
    expr {
      type: IDENT
      identifier {
        name: "name"
      }
    }
    direction: DESC
  }
  args {
    type: V_DOUBLE
    v_double: 0
  }
}

id	name	price	info
3	tomato	1.80	{"color": "red"}
5	orange	0.90	{"color": "orange"}
4	mango	3.14	{"color": "green"}
1	banana	1.20	{"color": "yellow"}
2	apple	0.25	{"color": "red"}
command ok
Find with != Operator, placeholder and Order asc
send Mysqlx.Crud.Find {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "!="
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  order {
    expr {
      type: IDENT
      identifier {
        name: "name"
      }
    }
    direction: ASC
  }
  args {
    type: V_DOUBLE
    v_double: 0
  }
}

id	name	price	info
2	apple	0.25	{"color": "red"}
1	banana	1.20	{"color": "yellow"}
4	mango	3.14	{"color": "green"}
5	orange	0.90	{"color": "orange"}
3	tomato	1.80	{"color": "red"}
command ok
Find with < Operator and placeholder
send Mysqlx.Crud.Find {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "<"
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  args {
    type: V_DOUBLE
    v_double: 0.25
  }
}

id	name	price	info
command ok
Find with >= Operator and placeholder
send Mysqlx.Crud.Find {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: ">="
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  args {
    type: V_DOUBLE
    v_double: 1.8
  }
}

id	name	price	info
3	tomato	1.80	{"color": "red"}
4	mango	3.14	{"color": "green"}
command ok
Find with <= Operator and placeholder
send Mysqlx.Crud.Find {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "<="
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  args {
    type: V_DOUBLE
    v_double: 0.25
  }
}

id	name	price	info
2	apple	0.25	{"color": "red"}
command ok
Find with in Operator and placeholder
send Mysqlx.Crud.Find {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "in"
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  args {
    type: V_DOUBLE
    v_double: 1.8
  }
}

id	name	price	info
3	tomato	1.80	{"color": "red"}
command ok
Find with not in Operator and placeholder
send Mysqlx.Crud.Find {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "not_in"
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  args {
    type: V_DOUBLE
    v_double: 1.8
  }
}

id	name	price	info
1	banana	1.20	{"color": "yellow"}
2	apple	0.25	{"color": "red"}
4	mango	3.14	{"color": "green"}
5	orange	0.90	{"color": "orange"}
command ok
Find with == Operator, V_NULL and placeholder
send Mysqlx.Crud.Find {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "is"
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  args {
    type: V_NULL
  }
}

id	name	price	info
6	berry	null	{"color": "orange"}
command ok
Update with == operator and placeholder
send Mysqlx.Crud.Update {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "=="
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  operation {
    source {
      name: "price"
    }
    operation: SET
    value {
      type: LITERAL
      literal {
        type: V_DOUBLE
        v_double: 18
      }
    }
  }
  args {
    type: V_DOUBLE
    v_double: 1.8
  }
}


1 rows affected
Rows matched: 1  Changed: 1  Warnings: 0
RUN SELECT * FROM xtest.mytable ORDER BY price
id	name	price	info
6	berry	null	{"color": "orange"}
2	apple	0.25	{"color": "red"}
5	orange	0.90	{"color": "orange"}
1	banana	1.20	{"color": "yellow"}
4	mango	3.14	{"color": "green"}
3	tomato	18.00	{"color": "red"}
0 rows affected
Update with > operator and placeholder
send Mysqlx.Crud.Update {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: ">"
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  operation {
    source {
      name: "price"
    }
    operation: SET
    value {
      type: LITERAL
      literal {
        type: V_DOUBLE
        v_double: 10
      }
    }
  }
  args {
    type: V_DOUBLE
    v_double: 1
  }
}


3 rows affected
Rows matched: 3  Changed: 3  Warnings: 0
RUN SELECT * FROM xtest.mytable ORDER BY price
id	name	price	info
6	berry	null	{"color": "orange"}
2	apple	0.25	{"color": "red"}
5	orange	0.90	{"color": "orange"}
1	banana	10.00	{"color": "yellow"}
3	tomato	10.00	{"color": "red"}
4	mango	10.00	{"color": "green"}
0 rows affected
Update with >= operator and placeholder
send Mysqlx.Crud.Update {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: ">="
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  operation {
    source {
      name: "price"
    }
    operation: SET
    value {
      type: LITERAL
      literal {
        type: V_DOUBLE
        v_double: 895.63
      }
    }
  }
  args {
    type: V_DOUBLE
    v_double: 1.8
  }
}


3 rows affected
Rows matched: 3  Changed: 3  Warnings: 0
RUN SELECT * FROM xtest.mytable ORDER BY price
id	name	price	info
6	berry	null	{"color": "orange"}
2	apple	0.25	{"color": "red"}
5	orange	0.90	{"color": "orange"}
1	banana	895.63	{"color": "yellow"}
3	tomato	895.63	{"color": "red"}
4	mango	895.63	{"color": "green"}
0 rows affected
Update with <= operator and placeholder
send Mysqlx.Crud.Update {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "<="
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  operation {
    source {
      name: "price"
    }
    operation: SET
    value {
      type: LITERAL
      literal {
        type: V_DOUBLE
        v_double: 456.54
      }
    }
  }
  args {
    type: V_DOUBLE
    v_double: 0.9
  }
}


2 rows affected
Rows matched: 2  Changed: 2  Warnings: 0
RUN SELECT * FROM xtest.mytable ORDER BY price
id	name	price	info
6	berry	null	{"color": "orange"}
2	apple	456.54	{"color": "red"}
5	orange	456.54	{"color": "orange"}
1	banana	895.63	{"color": "yellow"}
3	tomato	895.63	{"color": "red"}
4	mango	895.63	{"color": "green"}
0 rows affected
Update with Float value and placeholder 
send Mysqlx.Crud.Update {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "=="
      param {
        type: IDENT
        identifier {
          name: "name"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  operation {
    source {
      name: "price"
    }
    operation: SET
    value {
      type: LITERAL
      literal {
        type: V_FLOAT
        v_float: 256.53
      }
    }
  }
  args {
    type: V_STRING
    v_string {
      value: "berry"
    }
  }
}


1 rows affected
Rows matched: 1  Changed: 1  Warnings: 0
RUN SELECT * FROM xtest.mytable ORDER BY price
id	name	price	info
6	berry	256.53	{"color": "orange"}
2	apple	456.54	{"color": "red"}
5	orange	456.54	{"color": "orange"}
1	banana	895.63	{"color": "yellow"}
3	tomato	895.63	{"color": "red"}
4	mango	895.63	{"color": "green"}
0 rows affected
Update with String value and placeholder 
send Mysqlx.Crud.Update {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "=="
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  operation {
    source {
      name: "name"
    }
    operation: SET
    value {
      type: LITERAL
      literal {
        type: V_STRING
        v_string {
          value: "watermelon"
        }
      }
    }
  }
  args {
    type: V_DOUBLE
    v_double: 256.53
  }
}


1 rows affected
Rows matched: 1  Changed: 1  Warnings: 0
RUN SELECT * FROM xtest.mytable ORDER BY price
id	name	price	info
6	watermelon	256.53	{"color": "orange"}
2	apple	456.54	{"color": "red"}
5	orange	456.54	{"color": "orange"}
1	banana	895.63	{"color": "yellow"}
3	tomato	895.63	{"color": "red"}
4	mango	895.63	{"color": "green"}
0 rows affected
Update with Null value and placeholder 
send Mysqlx.Crud.Update {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "=="
      param {
        type: IDENT
        identifier {
          name: "name"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  operation {
    source {
      name: "price"
    }
    operation: SET
    value {
      type: LITERAL
      literal {
        type: V_NULL
      }
    }
  }
  args {
    type: V_STRING
    v_string {
      value: "banana"
    }
  }
}


1 rows affected
Rows matched: 1  Changed: 1  Warnings: 0
RUN SELECT * FROM xtest.mytable ORDER BY price
id	name	price	info
1	banana	null	{"color": "yellow"}
6	watermelon	256.53	{"color": "orange"}
2	apple	456.54	{"color": "red"}
5	orange	456.54	{"color": "orange"}
3	tomato	895.63	{"color": "red"}
4	mango	895.63	{"color": "green"}
0 rows affected
Update with ITEM_MERGE value and placeholder 
send Mysqlx.Crud.Update {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "=="
      param {
        type: IDENT
        identifier {
          name: "name"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  operation {
    source {
      name: "info"
    }
    operation: ITEM_MERGE
    value {
      type: LITERAL
      literal {
        type: V_OCTETS
        v_octets {
          value: "{\"third\":3.0, \"fourth\": \"four\"}"
        }
      }
    }
  }
  args {
    type: V_STRING
    v_string {
      value: "banana"
    }
  }
}


1 rows affected
Rows matched: 1  Changed: 1  Warnings: 1
Warnings generated:
WARNING | 1287 | 'JSON_MERGE' is deprecated and will be removed in a future release. Please use JSON_MERGE_PRESERVE/JSON_MERGE_PATCH instead
RUN SELECT * FROM xtest.mytable ORDER BY price
id	name	price	info
1	banana	null	{"color": "yellow", "third": 3, "fourth": "four"}
6	watermelon	256.53	{"color": "orange"}
2	apple	456.54	{"color": "red"}
5	orange	456.54	{"color": "orange"}
3	tomato	895.63	{"color": "red"}
4	mango	895.63	{"color": "green"}
0 rows affected
RUN insert into xtest.mytable values (7, 'Grapes',null, '{"third": ["two"]}')

1 rows affected
Update with ARRAY_INSERT value and placeholder 
send Mysqlx.Crud.Update {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "=="
      param {
        type: IDENT
        identifier {
          name: "name"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  operation {
    source {
      document_path {
        type: MEMBER
        value: "third"
      }
      document_path {
        type: ARRAY_INDEX
        index: 0
      }
      name: "info"
    }
    operation: ARRAY_INSERT
    value {
      type: LITERAL
      literal {
        type: V_OCTETS
        v_octets {
          value: "two.1"
        }
      }
    }
  }
  args {
    type: V_STRING
    v_string {
      value: "Grapes"
    }
  }
}


1 rows affected
Rows matched: 1  Changed: 1  Warnings: 0
RUN SELECT * FROM xtest.mytable ORDER BY price
id	name	price	info
1	banana	null	{"color": "yellow", "third": 3, "fourth": "four"}
7	Grapes	null	{"third": ["two.1", "two"]}
6	watermelon	256.53	{"color": "orange"}
2	apple	456.54	{"color": "red"}
5	orange	456.54	{"color": "orange"}
3	tomato	895.63	{"color": "red"}
4	mango	895.63	{"color": "green"}
0 rows affected
Delete with == Operator and placeholder
send Mysqlx.Crud.Delete {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "=="
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  args {
    type: V_DOUBLE
    v_double: 256.53
  }
}


1 rows affected
RUN SELECT * FROM xtest.mytable
id	name	price	info
1	banana	null	{"color": "yellow", "third": 3, "fourth": "four"}
2	apple	456.54	{"color": "red"}
3	tomato	895.63	{"color": "red"}
4	mango	895.63	{"color": "green"}
5	orange	456.54	{"color": "orange"}
7	Grapes	null	{"third": ["two.1", "two"]}
0 rows affected
Delete with != Operator and placeholder
send Mysqlx.Crud.Delete {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: "!="
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
  args {
    type: V_DOUBLE
    v_double: 256.53
  }
}


4 rows affected
RUN SELECT * FROM xtest.mytable
id	name	price	info
1	banana	null	{"color": "yellow", "third": 3, "fourth": "four"}
7	Grapes	null	{"third": ["two.1", "two"]}
0 rows affected
Find Wrong placeholder
send Mysqlx.Crud.Find {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: ">"
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 1
      }
    }
  }
  args {
    type: V_DOUBLE
    v_double: 0
  }
}

Got expected error: Invalid value of placeholder (code 5154)
Find Missing placeholder
send Mysqlx.Crud.Find {
  collection {
    name: "mytable"
    schema: "xtest"
  }
  data_model: TABLE
  criteria {
    type: OPERATOR
    operator {
      name: ">"
      param {
        type: IDENT
        identifier {
          name: "price"
        }
      }
      param {
        type: PLACEHOLDER
        position: 0
      }
    }
  }
}

Got expected error: Invalid value of placeholder (code 5154)
================================================================================
CLEAN UP
================================================================================
RUN drop schema if exists xtest

1 rows affected
Mysqlx.Ok {
  msg: "bye!"
}
ok
================================================================================
POSTAMBLE
================================================================================
uninstall plugin mysqlx;

Man Man