github.com/matrixorigin/matrixone@v1.2.0/test/distributed/cases/pessimistic_transaction/transaction_enhance.sql (about)

     1  -- truncate table
     2  drop table if exists atomic_table_10;
     3  create table atomic_table_10(c1 int,c2 varchar(25));
     4  insert into atomic_table_10 values (3,"a"),(4,"b"),(5,"c");
     5  start transaction ;
     6  truncate table atomic_table_10;
     7  -- @session:id=1{
     8  use transaction_enhance;
     9  select * from atomic_table_10;
    10  -- @session}
    11  select * from atomic_table_10;
    12  commit;
    13  select * from atomic_table_10;
    14  
    15  drop table if exists atomic_table_10;
    16  create table atomic_table_10(c1 int,c2 varchar(25));
    17  insert into atomic_table_10 values (3,"a"),(4,"b"),(5,"c");
    18  start transaction ;
    19  truncate table atomic_table_10;
    20  -- @session:id=1{
    21  use transaction_enhance;
    22  select * from atomic_table_10;
    23  -- @session}
    24  select * from atomic_table_10;
    25  rollback;
    26  select * from atomic_table_10;
    27  
    28  drop table if exists atomic_table_10;
    29  create table atomic_table_10(c1 int,c2 varchar(25));
    30  insert into atomic_table_10 values (3,"a"),(4,"b"),(5,"c");
    31  begin ;
    32  truncate table atomic_table_10;
    33  -- @bvt:issue#8848
    34  -- @session:id=1{
    35  use transaction_enhance;
    36  insert into atomic_table_10 values (6,"a"),(7,"b"),(8,"c");
    37  select * from atomic_table_10;
    38  -- @session}
    39  -- @bvt:issue
    40  select * from atomic_table_10;
    41  commit;
    42  select * from atomic_table_10;
    43  
    44  -- @bvt:issue#10491
    45  -- drop table
    46  drop table if exists atomic_table_11;
    47  create table atomic_table_11(c1 int,c2 varchar(25));
    48  insert into atomic_table_11 values (3,"a"),(4,"b"),(5,"c");
    49  begin;
    50  drop table atomic_table_11;
    51  
    52  -- @session:id=1{
    53  -- @wait:0:commit
    54  use transaction_enhance;
    55  insert into atomic_table_11 values (6,"a");
    56  select * from atomic_table_11;
    57  -- @session
    58  
    59  commit;
    60  select * from atomic_table_11;
    61  -- @bvt:issue
    62  
    63  -- @bvt:issue#10491
    64  drop table if exists atomic_table_11;
    65  create table atomic_table_11(c1 int,c2 varchar(25));
    66  insert into atomic_table_11 values (3,"a"),(4,"b"),(5,"c");
    67  begin;
    68  drop table atomic_table_11;
    69  
    70  -- @session:id=1{
    71  -- @wait:0:rollback
    72  use transaction_enhance;
    73  insert into atomic_table_11 values (6,"a");
    74  select * from atomic_table_11;
    75  -- @session}
    76  rollback ;
    77  select * from atomic_table_11;
    78  -- @bvt:issue
    79  
    80  drop table if exists atomic_table_11;
    81  create table atomic_table_11(c1 int,c2 varchar(25));
    82  insert into atomic_table_11 values (3,"a"),(4,"b"),(5,"c");
    83  begin;
    84  -- @session:id=1{
    85  use transaction_enhance;
    86  drop table atomic_table_11;
    87  -- @session}
    88  drop table atomic_table_11;
    89  commit;
    90  
    91  --alter table
    92  drop table if exists atomic_table_12;
    93  create table atomic_table_12(c1 int,c2 varchar(25));
    94  insert into atomic_table_12 values (3,"a"),(4,"b"),(5,"c");
    95  begin;
    96  alter table atomic_table_12 add index key1(c1);
    97  alter table atomic_table_12 alter index key1 visible;
    98  -- @session:id=1{
    99  use transaction_enhance;
   100  show create table atomic_table_12;
   101  -- @session}
   102  commit;
   103  show create table atomic_table_12;
   104  show index from atomic_table_12;
   105  
   106  use transaction_enhance;
   107  drop table if exists atomic_table_12_1;
   108  create table atomic_table_12_1(c1 int,c2 varchar(25));
   109  insert into atomic_table_12_1 values (3,"a"),(4,"b"),(5,"c");
   110  begin;
   111  alter table atomic_table_12_1 add index key1(c1);
   112  alter table atomic_table_12_1 alter index key1 visible;
   113  -- @session:id=1{
   114  use transaction_enhance;
   115  show create table atomic_table_12_1;
   116  -- @session}
   117  rollback;
   118  show create table atomic_table_12_1;
   119  show index from atomic_table_12_1;
   120  
   121  drop table if exists atomic_table_12_2;
   122  drop table if exists atomic_table_13;
   123  create table atomic_table_12_2(c1 int primary key,c2 varchar(25));
   124  insert into atomic_table_12_2 values (3,"a"),(4,"b"),(5,"c");
   125  create table atomic_table_13(c1 int primary key,c2 varchar(25));
   126  insert into atomic_table_13 values (3,"d"),(4,"e"),(5,"f");
   127  begin;
   128  alter table atomic_table_13 add constraint ffa foreign key f_a(c1) references atomic_table_12_2(c1);
   129  -- @session:id=1{
   130  use transaction_enhance;
   131  show create table atomic_table_12_2;
   132  -- @wait:0:commit
   133  insert into atomic_table_13 values (8,"h");
   134  select * from atomic_table_13;
   135  -- @session}
   136  insert into atomic_table_13 values (6,"h");
   137  commit;
   138  show create table atomic_table_13;
   139  
   140  drop table if exists atomic_table_12_3;
   141  drop table if exists atomic_table_13;
   142  create table atomic_table_12_3(c1 int primary key,c2 varchar(25));
   143  insert into atomic_table_12_3 values (3,"a"),(4,"b"),(5,"c");
   144  create table atomic_table_13(c1 int primary key,c2 varchar(25));
   145  insert into atomic_table_13 values (3,"d"),(4,"e"),(5,"f");
   146  alter table atomic_table_13 add constraint ffa foreign key f_a(c1) references atomic_table_12_3(c1);
   147  begin;
   148  alter table atomic_table_13 drop foreign key ffa;
   149  -- @session:id=1{
   150  use transaction_enhance;
   151  -- @wait:0:commit
   152  insert into atomic_table_13 values (8,"h");
   153  select * from atomic_table_13;
   154  -- @session}
   155  commit;
   156  show create table atomic_table_13;
   157  
   158  drop table if exists atomic_table_12_4;
   159  drop table if exists atomic_table_13;
   160  create table atomic_table_12_4(c1 int primary key,c2 varchar(25));
   161  insert into atomic_table_12_4 values (3,"a"),(4,"b"),(5,"c");
   162  create table atomic_table_13(c1 int primary key,c2 varchar(25));
   163  insert into atomic_table_13 values (3,"d"),(4,"e"),(5,"f");
   164  alter table atomic_table_13 add constraint ffa foreign key f_a(c1) references atomic_table_12_4(c1);
   165  begin;
   166  alter table atomic_table_13 drop foreign key ffa;
   167  -- @session:id=1{
   168  use transaction_enhance;
   169  -- @wait:0:commit
   170  insert into atomic_table_13 values (8,"h");
   171  select * from atomic_table_13;
   172  -- @session}
   173  rollback ;
   174  show create table atomic_table_13;
   175  
   176  drop table if exists atomic_table_12_5;
   177  drop table if exists atomic_table_13;
   178  create table atomic_table_12_5(c1 int,c2 varchar(25));
   179  insert into atomic_table_12_5 values (3,"a"),(4,"b"),(5,"c");
   180  alter table atomic_table_12_5 add index key1(c1);
   181  begin;
   182  alter table atomic_table_12_5 drop index key1;
   183  -- @session:id=1{
   184  use transaction_enhance;
   185  show create table atomic_table_12_5;
   186  select * from atomic_table_12_5;
   187  -- @session}
   188  commit;
   189  show index from atomic_table_12_5;
   190  
   191  -- w-w conflict
   192  drop table if exists atomic_table_14;
   193  create table atomic_table_14(c1 int,c2 varchar(25));
   194  insert into atomic_table_14 values (3,"a"),(4,"b"),(5,"c");
   195  start transaction ;
   196  alter table atomic_table_14 add  index key1(c1);
   197  -- @session:id=1{
   198  use transaction_enhance;
   199  -- @wait:0:commit
   200  drop table atomic_table_14;
   201  -- @session}
   202  insert into atomic_table_14 values (6,"a"),(7,"b");
   203  select * from atomic_table_14;
   204  commit;
   205  select * from atomic_table_14;
   206  
   207  drop table if exists atomic_table_15;
   208  create table atomic_table_15(c1 int,c2 varchar(25));
   209  begin;
   210  insert into atomic_table_15 values (6,"a"),(7,"b");
   211  truncate table atomic_table_15;
   212  -- @session:id=1{
   213  use transaction_enhance;
   214  -- @wait:0:commit
   215  drop table atomic_table_15;
   216  -- @session}
   217  select * from atomic_table_15;
   218  commit;
   219  select * from atomic_table_15;
   220  
   221  drop table if exists atomic_table_16;
   222  create table atomic_table_16(c1 int,c2 varchar(25));
   223  begin;
   224  insert into atomic_table_16 values (6,"a"),(7,"b");
   225  drop table atomic_table_16;
   226  -- @session:id=1{
   227  use transaction_enhance;
   228  -- @wait:0:commit
   229  drop table atomic_table_16;
   230  -- @session}
   231  commit;
   232  select * from atomic_table_16;
   233  
   234  drop table if exists atomic_table_17;
   235  create table atomic_table_17(c1 int,c2 varchar(25));
   236  begin;
   237  insert into atomic_table_17 values (6,"a"),(7,"b");
   238  drop table atomic_table_17;
   239  -- @session:id=1{
   240  use transaction_enhance;
   241  -- @wait:0:commit
   242  alter table atomic_table_17 add constraint unique key (c1);
   243  update atomic_table_17 set c1=8 where c2="b";
   244  -- @session}
   245  commit;
   246  select * from atomic_table_17;
   247  
   248  -- create/drop database,sequence ,create/drop account
   249  start transaction ;
   250  create database tdb;
   251  -- @session:id=1{
   252  use tdb;
   253  -- @session}
   254  drop database tdb;
   255  commit;
   256  
   257  begin;
   258  create sequence seq_01 as int start 30;
   259  -- @session:id=1{
   260  use transaction_enhance;
   261  select nextval('seq_01');
   262  -- @session}
   263  commit;
   264  select nextval('seq_01');
   265  
   266  drop table if exists atomic_table_11;
   267  drop account if exists trans_acc1;
   268  create account trans_acc1 admin_name "admin" identified by "111";
   269  begin;
   270  drop account trans_acc1;
   271  -- @session:id=1{
   272  use transaction_enhance;
   273  select count(*) from mo_catalog.mo_account where account_name='trans_acc1';
   274  -- @session}
   275  commit;
   276  select count(*) from mo_catalog.mo_account where account_name='trans_acc1';
   277  
   278  -- autocommit
   279  drop table if exists atomic_table_18;
   280  create table atomic_table_18(c1 int,c2 varchar(25));
   281  insert into atomic_table_18 values (6,"a"),(7,"b");
   282  set autocommit=0;
   283  alter table atomic_table_18 add index key1(c1);
   284  alter table atomic_table_18 alter index key1 visible;
   285  -- @session:id=1{
   286  use transaction_enhance;
   287  show create table atomic_table_18;
   288  -- @session}
   289  rollback;
   290  show create table atomic_table_18;
   291  show index from atomic_table_18;
   292  
   293  truncate table atomic_table_18;
   294  -- @session:id=1{
   295  use transaction_enhance;
   296  -- @wait:0:commit
   297  drop table atomic_table_18;
   298  -- @session}
   299  select * from atomic_table_18;
   300  commit;
   301  select * from atomic_table_18;
   302  
   303  set autocommit=1;
   304  drop table if exists atomic_table_18;
   305  create table atomic_table_18(c1 int,c2 varchar(25));
   306  insert into atomic_table_18 values (6,"a"),(7,"b");
   307  set autocommit=0;
   308  drop table atomic_table_18;
   309  -- @session:id=1{
   310  use transaction_enhance;
   311  -- @wait:0:commit
   312  drop table atomic_table_18;
   313  -- @session}
   314  select * from atomic_table_18;
   315  commit;
   316  select * from atomic_table_18;
   317  set autocommit=1;
   318  drop account if exists trans_acc1;
   319  
   320  -- alter table modify column primary key
   321  drop table if exists alter01;
   322  drop table if exists alter02;
   323  create table alter01(col1 int primary key,col2 varchar(25));
   324  insert into alter01 values (3,"a"),(4,"b"),(5,"c");
   325  begin;
   326  alter table alter01 modify col1 float;
   327  -- @session:id=1{
   328  use transaction_enhance;
   329  -- @wait:0:commit
   330  insert into alter01 values (8,"h");
   331  select * from alter01;
   332  -- @session
   333  insert into alter01 values (6,"h");
   334  commit;
   335  select * from alter01;
   336  
   337  -- alter table modify column
   338  drop table if exists alter01;
   339  drop table if exists alter02;
   340  create table alter01(col1 int not null ,col2 varchar(25));
   341  insert into alter01 values (3,"a"),(4,"b"),(5,"c");
   342  begin;
   343  alter table alter01 modify col1 float;
   344  -- @session:id=1{
   345  use transaction_enhance;
   346  -- @wait:0:commit
   347  insert into alter01 values (8,"h");
   348  select * from alter01;
   349  -- @session
   350  insert into alter01 values (6,"h");
   351  commit;
   352  select * from alter01;
   353  
   354  -- alter table change column
   355  drop table if exists atomic_table_12_5;
   356  create table atomic_table_12_5(c1 int,c2 varchar(25));
   357  insert into atomic_table_12_5 values (3,"a"),(4,"b"),(5,"c");
   358  alter table atomic_table_12_5 add index key1(c1);
   359  begin;
   360  alter table atomic_table_12_5 change c1 clNew double;
   361  -- @session:id=1{
   362  use transaction_enhance;
   363  -- @wait:0:commit
   364  insert into atomic_table_12_5 values (8,"h");
   365  show create table atomic_table_12_5;
   366  select * from atomic_table_12_5;
   367  -- @session}
   368  show create table atomic_table_12_5;
   369  
   370  -- alter table change primary key column
   371  drop table if exists alter01;
   372  create table alter01(col1 int primary key,col2 varchar(25));
   373  insert into alter01 values (3,"a"),(4,"b"),(5,"c");
   374  begin;
   375  alter table alter01 change col1 col1New float;
   376  -- @session:id=1{
   377  use transaction_enhance;
   378  -- @wait:0:commit
   379  insert into alter01 values (8,"h");
   380  select * from alter01;
   381  -- @session
   382  insert into alter01 values (6,"h");
   383  select * from alter01;
   384  
   385  -- alter table rename column
   386  drop table if exists atomic_table_12_5;
   387  create table atomic_table_12_5(c1 int,c2 varchar(25));
   388  insert into atomic_table_12_5 values (3,"a"),(4,"b"),(5,"c");
   389  alter table atomic_table_12_5 add index key1(c1);
   390  begin;
   391  alter table atomic_table_12_5 rename column c1 to clNew;
   392  -- @session:id=1{
   393  use transaction_enhance;
   394  -- @wait:0:commit
   395  insert into atomic_table_12_5 values (8,"h");
   396  show create table atomic_table_12_5;
   397  select * from atomic_table_12_5;
   398  -- @session}
   399  show create table atomic_table_12_5;
   400  
   401  -- alter table rename primary key column
   402  drop table if exists alter01;
   403  create table alter01(col1 int primary key,col2 varchar(25));
   404  insert into alter01 values (3,"a"),(4,"b"),(5,"c");
   405  begin;
   406  alter table alter01 rename column col1 to col1New;
   407  -- @session:id=1{
   408  use transaction_enhance;
   409  -- @wait:0:commit
   410  insert into alter01 values (8,"h");
   411  select * from alter01;
   412  -- @session
   413  insert into alter01 values (6,"h");
   414  select * from alter01;
   415  
   416  ----------------------------------------------------------
   417  -- alter table add primary key column
   418  drop table if exists alter01;
   419  create table alter01(col1 int,col2 varchar(25));
   420  insert into alter01 values (3,"a"),(4,"b"),(5,"c");
   421  begin;
   422  alter table alter01 add constraint primary key (col1);
   423  -- @session:id=1{
   424  use transaction_enhance;
   425  -- @wait:0:commit
   426  insert into alter01 values (5,"h");
   427  select * from alter01;
   428  -- @session
   429  insert into alter01 values (6,"h");
   430  select * from alter01;
   431  
   432  ----------------------------------------------------------
   433  -- alter table drop primary key column
   434  drop table if exists alter01;
   435  create table alter01(col1 int primary key,col2 varchar(25));
   436  insert into alter01 values (3,"a"),(4,"b"),(5,"c");
   437  begin;
   438  alter table alter01 drop primary key;
   439  -- @session:id=1{
   440  use transaction_enhance;
   441  -- @wait:0:commit
   442  insert into alter01 values (5,"h");
   443  select * from alter01;
   444  -- @session
   445  insert into alter01 values (6,"h");
   446  select * from alter01;