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;