1============================================= 2CRUD TABLE CRITERIA ARGS SCENARIOS 3============================================= 4 5================================================================================ 6PREAMBLE 7================================================================================ 8install plugin mysqlx soname "mysqlx.so"; 9call mtr.add_suppression("Plugin mysqlx reported: .Failed at SSL configuration: .SSL context is not usable without certificate and private key.."); 10call mtr.add_suppression("Plugin mysqlx reported: .SSL_CTX_load_verify_locations failed."); 11================================================================================ 12TEST START 13================================================================================ 14RUN drop schema if exists xtest 15 160 rows affected 17RUN create schema xtest 18 191 rows affected 20RUN use xtest 21 220 rows affected 23RUN create table mytable (id int primary key, name varchar(40), price decimal(5,2), info json) 24 250 rows affected 26RUN insert into mytable values (1, 'banana', 1.20, '{"color": "yellow"}') 27 281 rows affected 29RUN insert into mytable values (2, 'apple', 0.25, '{"color":"red"}') 30 311 rows affected 32RUN insert into mytable values (3, 'tomato', 1.80, '{"color":"red"}') 33 341 rows affected 35RUN insert into mytable values (4, 'mango', 3.14, '{"color":"green"}') 36 371 rows affected 38RUN insert into mytable values (5, 'orange', 0.90, '{"color":"orange"}') 39 401 rows affected 41RUN insert into mytable values (6, 'berry', null, '{"color":"orange"}') 42 431 rows affected 44RUN SELECT * FROM xtest.mytable ORDER BY price 45id name price info 466 berry null {"color": "orange"} 472 apple 0.25 {"color": "red"} 485 orange 0.90 {"color": "orange"} 491 banana 1.20 {"color": "yellow"} 503 tomato 1.80 {"color": "red"} 514 mango 3.14 {"color": "green"} 520 rows affected 53Find with == Operator and placeholder 54send Mysqlx.Crud.Find { 55 collection { 56 name: "mytable" 57 schema: "xtest" 58 } 59 data_model: TABLE 60 criteria { 61 type: OPERATOR 62 operator { 63 name: "==" 64 param { 65 type: IDENT 66 identifier { 67 name: "name" 68 } 69 } 70 param { 71 type: PLACEHOLDER 72 position: 0 73 } 74 } 75 } 76 args { 77 type: V_STRING 78 v_string { 79 value: "tomato" 80 } 81 } 82} 83 84id name price info 853 tomato 1.80 {"color": "red"} 86command ok 87Find with != Operator. placeholder and projection 88send Mysqlx.Crud.Find { 89 collection { 90 name: "mytable" 91 schema: "xtest" 92 } 93 data_model: TABLE 94 projection { 95 source { 96 type: IDENT 97 identifier { 98 name: "name" 99 } 100 } 101 } 102 criteria { 103 type: OPERATOR 104 operator { 105 name: "==" 106 param { 107 type: IDENT 108 identifier { 109 name: "name" 110 } 111 } 112 param { 113 type: PLACEHOLDER 114 position: 0 115 } 116 } 117 } 118 args { 119 type: V_STRING 120 v_string { 121 value: "tomato" 122 } 123 } 124} 125 126name 127tomato 128command ok 129Find with != Operator and placeholder 130send Mysqlx.Crud.Find { 131 collection { 132 name: "mytable" 133 schema: "xtest" 134 } 135 data_model: TABLE 136 criteria { 137 type: OPERATOR 138 operator { 139 name: "!=" 140 param { 141 type: IDENT 142 identifier { 143 name: "name" 144 } 145 } 146 param { 147 type: PLACEHOLDER 148 position: 0 149 } 150 } 151 } 152 args { 153 type: V_STRING 154 v_string { 155 value: "tomato" 156 } 157 } 158} 159 160id name price info 1611 banana 1.20 {"color": "yellow"} 1622 apple 0.25 {"color": "red"} 1634 mango 3.14 {"color": "green"} 1645 orange 0.90 {"color": "orange"} 1656 berry null {"color": "orange"} 166command ok 167Find with > Operator and placeholder 168send Mysqlx.Crud.Find { 169 collection { 170 name: "mytable" 171 schema: "xtest" 172 } 173 data_model: TABLE 174 criteria { 175 type: OPERATOR 176 operator { 177 name: ">" 178 param { 179 type: IDENT 180 identifier { 181 name: "price" 182 } 183 } 184 param { 185 type: PLACEHOLDER 186 position: 0 187 } 188 } 189 } 190 args { 191 type: V_DOUBLE 192 v_double: 1.8 193 } 194} 195 196id name price info 1974 mango 3.14 {"color": "green"} 198command ok 199Find with != Operator, placeholder and Order desc 200send Mysqlx.Crud.Find { 201 collection { 202 name: "mytable" 203 schema: "xtest" 204 } 205 data_model: TABLE 206 criteria { 207 type: OPERATOR 208 operator { 209 name: "!=" 210 param { 211 type: IDENT 212 identifier { 213 name: "price" 214 } 215 } 216 param { 217 type: PLACEHOLDER 218 position: 0 219 } 220 } 221 } 222 order { 223 expr { 224 type: IDENT 225 identifier { 226 name: "name" 227 } 228 } 229 direction: DESC 230 } 231 args { 232 type: V_DOUBLE 233 v_double: 0 234 } 235} 236 237id name price info 2383 tomato 1.80 {"color": "red"} 2395 orange 0.90 {"color": "orange"} 2404 mango 3.14 {"color": "green"} 2411 banana 1.20 {"color": "yellow"} 2422 apple 0.25 {"color": "red"} 243command ok 244Find with != Operator, placeholder and Order asc 245send Mysqlx.Crud.Find { 246 collection { 247 name: "mytable" 248 schema: "xtest" 249 } 250 data_model: TABLE 251 criteria { 252 type: OPERATOR 253 operator { 254 name: "!=" 255 param { 256 type: IDENT 257 identifier { 258 name: "price" 259 } 260 } 261 param { 262 type: PLACEHOLDER 263 position: 0 264 } 265 } 266 } 267 order { 268 expr { 269 type: IDENT 270 identifier { 271 name: "name" 272 } 273 } 274 direction: ASC 275 } 276 args { 277 type: V_DOUBLE 278 v_double: 0 279 } 280} 281 282id name price info 2832 apple 0.25 {"color": "red"} 2841 banana 1.20 {"color": "yellow"} 2854 mango 3.14 {"color": "green"} 2865 orange 0.90 {"color": "orange"} 2873 tomato 1.80 {"color": "red"} 288command ok 289Find with < Operator and placeholder 290send Mysqlx.Crud.Find { 291 collection { 292 name: "mytable" 293 schema: "xtest" 294 } 295 data_model: TABLE 296 criteria { 297 type: OPERATOR 298 operator { 299 name: "<" 300 param { 301 type: IDENT 302 identifier { 303 name: "price" 304 } 305 } 306 param { 307 type: PLACEHOLDER 308 position: 0 309 } 310 } 311 } 312 args { 313 type: V_DOUBLE 314 v_double: 0.25 315 } 316} 317 318id name price info 319command ok 320Find with >= Operator and placeholder 321send Mysqlx.Crud.Find { 322 collection { 323 name: "mytable" 324 schema: "xtest" 325 } 326 data_model: TABLE 327 criteria { 328 type: OPERATOR 329 operator { 330 name: ">=" 331 param { 332 type: IDENT 333 identifier { 334 name: "price" 335 } 336 } 337 param { 338 type: PLACEHOLDER 339 position: 0 340 } 341 } 342 } 343 args { 344 type: V_DOUBLE 345 v_double: 1.8 346 } 347} 348 349id name price info 3503 tomato 1.80 {"color": "red"} 3514 mango 3.14 {"color": "green"} 352command ok 353Find with <= Operator and placeholder 354send Mysqlx.Crud.Find { 355 collection { 356 name: "mytable" 357 schema: "xtest" 358 } 359 data_model: TABLE 360 criteria { 361 type: OPERATOR 362 operator { 363 name: "<=" 364 param { 365 type: IDENT 366 identifier { 367 name: "price" 368 } 369 } 370 param { 371 type: PLACEHOLDER 372 position: 0 373 } 374 } 375 } 376 args { 377 type: V_DOUBLE 378 v_double: 0.25 379 } 380} 381 382id name price info 3832 apple 0.25 {"color": "red"} 384command ok 385Find with in Operator and placeholder 386send Mysqlx.Crud.Find { 387 collection { 388 name: "mytable" 389 schema: "xtest" 390 } 391 data_model: TABLE 392 criteria { 393 type: OPERATOR 394 operator { 395 name: "in" 396 param { 397 type: IDENT 398 identifier { 399 name: "price" 400 } 401 } 402 param { 403 type: PLACEHOLDER 404 position: 0 405 } 406 } 407 } 408 args { 409 type: V_DOUBLE 410 v_double: 1.8 411 } 412} 413 414id name price info 4153 tomato 1.80 {"color": "red"} 416command ok 417Find with not in Operator and placeholder 418send Mysqlx.Crud.Find { 419 collection { 420 name: "mytable" 421 schema: "xtest" 422 } 423 data_model: TABLE 424 criteria { 425 type: OPERATOR 426 operator { 427 name: "not_in" 428 param { 429 type: IDENT 430 identifier { 431 name: "price" 432 } 433 } 434 param { 435 type: PLACEHOLDER 436 position: 0 437 } 438 } 439 } 440 args { 441 type: V_DOUBLE 442 v_double: 1.8 443 } 444} 445 446id name price info 4471 banana 1.20 {"color": "yellow"} 4482 apple 0.25 {"color": "red"} 4494 mango 3.14 {"color": "green"} 4505 orange 0.90 {"color": "orange"} 451command ok 452Find with == Operator, V_NULL and placeholder 453send Mysqlx.Crud.Find { 454 collection { 455 name: "mytable" 456 schema: "xtest" 457 } 458 data_model: TABLE 459 criteria { 460 type: OPERATOR 461 operator { 462 name: "is" 463 param { 464 type: IDENT 465 identifier { 466 name: "price" 467 } 468 } 469 param { 470 type: PLACEHOLDER 471 position: 0 472 } 473 } 474 } 475 args { 476 type: V_NULL 477 } 478} 479 480id name price info 4816 berry null {"color": "orange"} 482command ok 483Update with == operator and placeholder 484send Mysqlx.Crud.Update { 485 collection { 486 name: "mytable" 487 schema: "xtest" 488 } 489 data_model: TABLE 490 criteria { 491 type: OPERATOR 492 operator { 493 name: "==" 494 param { 495 type: IDENT 496 identifier { 497 name: "price" 498 } 499 } 500 param { 501 type: PLACEHOLDER 502 position: 0 503 } 504 } 505 } 506 operation { 507 source { 508 name: "price" 509 } 510 operation: SET 511 value { 512 type: LITERAL 513 literal { 514 type: V_DOUBLE 515 v_double: 18 516 } 517 } 518 } 519 args { 520 type: V_DOUBLE 521 v_double: 1.8 522 } 523} 524 525 5261 rows affected 527Rows matched: 1 Changed: 1 Warnings: 0 528RUN SELECT * FROM xtest.mytable ORDER BY price 529id name price info 5306 berry null {"color": "orange"} 5312 apple 0.25 {"color": "red"} 5325 orange 0.90 {"color": "orange"} 5331 banana 1.20 {"color": "yellow"} 5344 mango 3.14 {"color": "green"} 5353 tomato 18.00 {"color": "red"} 5360 rows affected 537Update with > operator and placeholder 538send Mysqlx.Crud.Update { 539 collection { 540 name: "mytable" 541 schema: "xtest" 542 } 543 data_model: TABLE 544 criteria { 545 type: OPERATOR 546 operator { 547 name: ">" 548 param { 549 type: IDENT 550 identifier { 551 name: "price" 552 } 553 } 554 param { 555 type: PLACEHOLDER 556 position: 0 557 } 558 } 559 } 560 operation { 561 source { 562 name: "price" 563 } 564 operation: SET 565 value { 566 type: LITERAL 567 literal { 568 type: V_DOUBLE 569 v_double: 10 570 } 571 } 572 } 573 args { 574 type: V_DOUBLE 575 v_double: 1 576 } 577} 578 579 5803 rows affected 581Rows matched: 3 Changed: 3 Warnings: 0 582RUN SELECT * FROM xtest.mytable ORDER BY price 583id name price info 5846 berry null {"color": "orange"} 5852 apple 0.25 {"color": "red"} 5865 orange 0.90 {"color": "orange"} 5871 banana 10.00 {"color": "yellow"} 5883 tomato 10.00 {"color": "red"} 5894 mango 10.00 {"color": "green"} 5900 rows affected 591Update with >= operator and placeholder 592send Mysqlx.Crud.Update { 593 collection { 594 name: "mytable" 595 schema: "xtest" 596 } 597 data_model: TABLE 598 criteria { 599 type: OPERATOR 600 operator { 601 name: ">=" 602 param { 603 type: IDENT 604 identifier { 605 name: "price" 606 } 607 } 608 param { 609 type: PLACEHOLDER 610 position: 0 611 } 612 } 613 } 614 operation { 615 source { 616 name: "price" 617 } 618 operation: SET 619 value { 620 type: LITERAL 621 literal { 622 type: V_DOUBLE 623 v_double: 895.63 624 } 625 } 626 } 627 args { 628 type: V_DOUBLE 629 v_double: 1.8 630 } 631} 632 633 6343 rows affected 635Rows matched: 3 Changed: 3 Warnings: 0 636RUN SELECT * FROM xtest.mytable ORDER BY price 637id name price info 6386 berry null {"color": "orange"} 6392 apple 0.25 {"color": "red"} 6405 orange 0.90 {"color": "orange"} 6411 banana 895.63 {"color": "yellow"} 6423 tomato 895.63 {"color": "red"} 6434 mango 895.63 {"color": "green"} 6440 rows affected 645Update with <= operator and placeholder 646send Mysqlx.Crud.Update { 647 collection { 648 name: "mytable" 649 schema: "xtest" 650 } 651 data_model: TABLE 652 criteria { 653 type: OPERATOR 654 operator { 655 name: "<=" 656 param { 657 type: IDENT 658 identifier { 659 name: "price" 660 } 661 } 662 param { 663 type: PLACEHOLDER 664 position: 0 665 } 666 } 667 } 668 operation { 669 source { 670 name: "price" 671 } 672 operation: SET 673 value { 674 type: LITERAL 675 literal { 676 type: V_DOUBLE 677 v_double: 456.54 678 } 679 } 680 } 681 args { 682 type: V_DOUBLE 683 v_double: 0.9 684 } 685} 686 687 6882 rows affected 689Rows matched: 2 Changed: 2 Warnings: 0 690RUN SELECT * FROM xtest.mytable ORDER BY price 691id name price info 6926 berry null {"color": "orange"} 6932 apple 456.54 {"color": "red"} 6945 orange 456.54 {"color": "orange"} 6951 banana 895.63 {"color": "yellow"} 6963 tomato 895.63 {"color": "red"} 6974 mango 895.63 {"color": "green"} 6980 rows affected 699Update with Float value and placeholder 700send Mysqlx.Crud.Update { 701 collection { 702 name: "mytable" 703 schema: "xtest" 704 } 705 data_model: TABLE 706 criteria { 707 type: OPERATOR 708 operator { 709 name: "==" 710 param { 711 type: IDENT 712 identifier { 713 name: "name" 714 } 715 } 716 param { 717 type: PLACEHOLDER 718 position: 0 719 } 720 } 721 } 722 operation { 723 source { 724 name: "price" 725 } 726 operation: SET 727 value { 728 type: LITERAL 729 literal { 730 type: V_FLOAT 731 v_float: 256.53 732 } 733 } 734 } 735 args { 736 type: V_STRING 737 v_string { 738 value: "berry" 739 } 740 } 741} 742 743 7441 rows affected 745Rows matched: 1 Changed: 1 Warnings: 0 746RUN SELECT * FROM xtest.mytable ORDER BY price 747id name price info 7486 berry 256.53 {"color": "orange"} 7492 apple 456.54 {"color": "red"} 7505 orange 456.54 {"color": "orange"} 7511 banana 895.63 {"color": "yellow"} 7523 tomato 895.63 {"color": "red"} 7534 mango 895.63 {"color": "green"} 7540 rows affected 755Update with String value and placeholder 756send Mysqlx.Crud.Update { 757 collection { 758 name: "mytable" 759 schema: "xtest" 760 } 761 data_model: TABLE 762 criteria { 763 type: OPERATOR 764 operator { 765 name: "==" 766 param { 767 type: IDENT 768 identifier { 769 name: "price" 770 } 771 } 772 param { 773 type: PLACEHOLDER 774 position: 0 775 } 776 } 777 } 778 operation { 779 source { 780 name: "name" 781 } 782 operation: SET 783 value { 784 type: LITERAL 785 literal { 786 type: V_STRING 787 v_string { 788 value: "watermelon" 789 } 790 } 791 } 792 } 793 args { 794 type: V_DOUBLE 795 v_double: 256.53 796 } 797} 798 799 8001 rows affected 801Rows matched: 1 Changed: 1 Warnings: 0 802RUN SELECT * FROM xtest.mytable ORDER BY price 803id name price info 8046 watermelon 256.53 {"color": "orange"} 8052 apple 456.54 {"color": "red"} 8065 orange 456.54 {"color": "orange"} 8071 banana 895.63 {"color": "yellow"} 8083 tomato 895.63 {"color": "red"} 8094 mango 895.63 {"color": "green"} 8100 rows affected 811Update with Null value and placeholder 812send Mysqlx.Crud.Update { 813 collection { 814 name: "mytable" 815 schema: "xtest" 816 } 817 data_model: TABLE 818 criteria { 819 type: OPERATOR 820 operator { 821 name: "==" 822 param { 823 type: IDENT 824 identifier { 825 name: "name" 826 } 827 } 828 param { 829 type: PLACEHOLDER 830 position: 0 831 } 832 } 833 } 834 operation { 835 source { 836 name: "price" 837 } 838 operation: SET 839 value { 840 type: LITERAL 841 literal { 842 type: V_NULL 843 } 844 } 845 } 846 args { 847 type: V_STRING 848 v_string { 849 value: "banana" 850 } 851 } 852} 853 854 8551 rows affected 856Rows matched: 1 Changed: 1 Warnings: 0 857RUN SELECT * FROM xtest.mytable ORDER BY price 858id name price info 8591 banana null {"color": "yellow"} 8606 watermelon 256.53 {"color": "orange"} 8612 apple 456.54 {"color": "red"} 8625 orange 456.54 {"color": "orange"} 8633 tomato 895.63 {"color": "red"} 8644 mango 895.63 {"color": "green"} 8650 rows affected 866Update with ITEM_MERGE value and placeholder 867send Mysqlx.Crud.Update { 868 collection { 869 name: "mytable" 870 schema: "xtest" 871 } 872 data_model: TABLE 873 criteria { 874 type: OPERATOR 875 operator { 876 name: "==" 877 param { 878 type: IDENT 879 identifier { 880 name: "name" 881 } 882 } 883 param { 884 type: PLACEHOLDER 885 position: 0 886 } 887 } 888 } 889 operation { 890 source { 891 name: "info" 892 } 893 operation: ITEM_MERGE 894 value { 895 type: LITERAL 896 literal { 897 type: V_OCTETS 898 v_octets { 899 value: "{\"third\":3.0, \"fourth\": \"four\"}" 900 } 901 } 902 } 903 } 904 args { 905 type: V_STRING 906 v_string { 907 value: "banana" 908 } 909 } 910} 911 912 9131 rows affected 914Rows matched: 1 Changed: 1 Warnings: 1 915Warnings generated: 916WARNING | 1287 | 'JSON_MERGE' is deprecated and will be removed in a future release. Please use JSON_MERGE_PRESERVE/JSON_MERGE_PATCH instead 917RUN SELECT * FROM xtest.mytable ORDER BY price 918id name price info 9191 banana null {"color": "yellow", "third": 3, "fourth": "four"} 9206 watermelon 256.53 {"color": "orange"} 9212 apple 456.54 {"color": "red"} 9225 orange 456.54 {"color": "orange"} 9233 tomato 895.63 {"color": "red"} 9244 mango 895.63 {"color": "green"} 9250 rows affected 926RUN insert into xtest.mytable values (7, 'Grapes',null, '{"third": ["two"]}') 927 9281 rows affected 929Update with ARRAY_INSERT value and placeholder 930send Mysqlx.Crud.Update { 931 collection { 932 name: "mytable" 933 schema: "xtest" 934 } 935 data_model: TABLE 936 criteria { 937 type: OPERATOR 938 operator { 939 name: "==" 940 param { 941 type: IDENT 942 identifier { 943 name: "name" 944 } 945 } 946 param { 947 type: PLACEHOLDER 948 position: 0 949 } 950 } 951 } 952 operation { 953 source { 954 document_path { 955 type: MEMBER 956 value: "third" 957 } 958 document_path { 959 type: ARRAY_INDEX 960 index: 0 961 } 962 name: "info" 963 } 964 operation: ARRAY_INSERT 965 value { 966 type: LITERAL 967 literal { 968 type: V_OCTETS 969 v_octets { 970 value: "two.1" 971 } 972 } 973 } 974 } 975 args { 976 type: V_STRING 977 v_string { 978 value: "Grapes" 979 } 980 } 981} 982 983 9841 rows affected 985Rows matched: 1 Changed: 1 Warnings: 0 986RUN SELECT * FROM xtest.mytable ORDER BY price 987id name price info 9881 banana null {"color": "yellow", "third": 3, "fourth": "four"} 9897 Grapes null {"third": ["two.1", "two"]} 9906 watermelon 256.53 {"color": "orange"} 9912 apple 456.54 {"color": "red"} 9925 orange 456.54 {"color": "orange"} 9933 tomato 895.63 {"color": "red"} 9944 mango 895.63 {"color": "green"} 9950 rows affected 996Delete with == Operator and placeholder 997send Mysqlx.Crud.Delete { 998 collection { 999 name: "mytable" 1000 schema: "xtest" 1001 } 1002 data_model: TABLE 1003 criteria { 1004 type: OPERATOR 1005 operator { 1006 name: "==" 1007 param { 1008 type: IDENT 1009 identifier { 1010 name: "price" 1011 } 1012 } 1013 param { 1014 type: PLACEHOLDER 1015 position: 0 1016 } 1017 } 1018 } 1019 args { 1020 type: V_DOUBLE 1021 v_double: 256.53 1022 } 1023} 1024 1025 10261 rows affected 1027RUN SELECT * FROM xtest.mytable 1028id name price info 10291 banana null {"color": "yellow", "third": 3, "fourth": "four"} 10302 apple 456.54 {"color": "red"} 10313 tomato 895.63 {"color": "red"} 10324 mango 895.63 {"color": "green"} 10335 orange 456.54 {"color": "orange"} 10347 Grapes null {"third": ["two.1", "two"]} 10350 rows affected 1036Delete with != Operator and placeholder 1037send Mysqlx.Crud.Delete { 1038 collection { 1039 name: "mytable" 1040 schema: "xtest" 1041 } 1042 data_model: TABLE 1043 criteria { 1044 type: OPERATOR 1045 operator { 1046 name: "!=" 1047 param { 1048 type: IDENT 1049 identifier { 1050 name: "price" 1051 } 1052 } 1053 param { 1054 type: PLACEHOLDER 1055 position: 0 1056 } 1057 } 1058 } 1059 args { 1060 type: V_DOUBLE 1061 v_double: 256.53 1062 } 1063} 1064 1065 10664 rows affected 1067RUN SELECT * FROM xtest.mytable 1068id name price info 10691 banana null {"color": "yellow", "third": 3, "fourth": "four"} 10707 Grapes null {"third": ["two.1", "two"]} 10710 rows affected 1072Find Wrong placeholder 1073send Mysqlx.Crud.Find { 1074 collection { 1075 name: "mytable" 1076 schema: "xtest" 1077 } 1078 data_model: TABLE 1079 criteria { 1080 type: OPERATOR 1081 operator { 1082 name: ">" 1083 param { 1084 type: IDENT 1085 identifier { 1086 name: "price" 1087 } 1088 } 1089 param { 1090 type: PLACEHOLDER 1091 position: 1 1092 } 1093 } 1094 } 1095 args { 1096 type: V_DOUBLE 1097 v_double: 0 1098 } 1099} 1100 1101Got expected error: Invalid value of placeholder (code 5154) 1102Find Missing placeholder 1103send Mysqlx.Crud.Find { 1104 collection { 1105 name: "mytable" 1106 schema: "xtest" 1107 } 1108 data_model: TABLE 1109 criteria { 1110 type: OPERATOR 1111 operator { 1112 name: ">" 1113 param { 1114 type: IDENT 1115 identifier { 1116 name: "price" 1117 } 1118 } 1119 param { 1120 type: PLACEHOLDER 1121 position: 0 1122 } 1123 } 1124 } 1125} 1126 1127Got expected error: Invalid value of placeholder (code 5154) 1128================================================================================ 1129CLEAN UP 1130================================================================================ 1131RUN drop schema if exists xtest 1132 11331 rows affected 1134Mysqlx.Ok { 1135 msg: "bye!" 1136} 1137ok 1138================================================================================ 1139POSTAMBLE 1140================================================================================ 1141uninstall plugin mysqlx; 1142