blob: 5a9de73ee5b1878d938f40fd11c65aa70cab3cb8 [file] [log] [blame]
--
-- Licensed to the Apache Software Foundation (ASF) under one or more
-- contributor license agreements. See the NOTICE file distributed with
-- this work for additional information regarding copyright ownership.
-- The ASF licenses this file to You under the Apache License, Version 2.0
-- (the "License"); you may not use this file except in compliance with
-- the License. You may obtain a copy of the License at
--
-- http://www.apache.org/licenses/LICENSE-2.0
--
-- Unless required by applicable law or agreed to in writing, software
-- distributed under the License is distributed on an "AS IS" BASIS,
-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-- See the License for the specific language governing permissions and
-- limitations under the License.
--
--------------------------------------------------------------------------------
-- Test multi user lock interaction of ddl.
--------------------------------------------------------------------------------
autocommit off;
connect 'wombat' as create1;
connect 'wombat' as create2;
--------------------------------------------------------------------------------
-- Test 0: create1:serializable, create2:serializable
--------------------------------------------------------------------------------
-- set up
set connection create1;
autocommit off;
drop table create1;
drop table data;
create table data (keycol int, data char(250));
create unique index d1 on data (keycol);
insert into data values (0, '0');
insert into data values (10, '100');
insert into data values (20, '200');
insert into data values (30, '300');
insert into data values (40, '400');
insert into data values (50, '100');
insert into data values (60, '200');
insert into data values (70, '300');
insert into data values (80, '400');
set isolation RR;
commit;
set connection create2;
autocommit off;
drop table create2;
set current isolation = serializable;
commit;
run resource '/org/apache/derbyTesting/functionTests/tests/store/cisco.subsql';
--------------------------------------------------------------------------------
-- Test 1: create1:serializable, create2:repeatable read
--------------------------------------------------------------------------------
-- set up
set connection create1;
autocommit off;
drop table create1;
drop table data;
create table data (keycol int, data char(250));
create unique index d1 on data (keycol);
insert into data values (0, '0');
insert into data values (10, '100');
insert into data values (20, '200');
insert into data values (30, '300');
insert into data values (40, '400');
insert into data values (50, '100');
insert into data values (60, '200');
insert into data values (70, '300');
insert into data values (80, '400');
set isolation to repeatable READ;
commit;
set connection create2;
autocommit off;
drop table create2;
set isolation RS;
commit;
run resource '/org/apache/derbyTesting/functionTests/tests/store/cisco.subsql';
--------------------------------------------------------------------------------
-- Test 1: create1:repeatable read, create2:serializable
--------------------------------------------------------------------------------
-- set up
set connection create1;
autocommit off;
drop table create1;
drop table data;
create table data (keycol int, data char(250));
create unique index d1 on data (keycol);
insert into data values (0, '0');
insert into data values (10, '100');
insert into data values (20, '200');
insert into data values (30, '300');
insert into data values (40, '400');
insert into data values (50, '100');
insert into data values (60, '200');
insert into data values (70, '300');
insert into data values (80, '400');
set isolation to rs;
commit;
set connection create2;
autocommit off;
drop table create2;
set isolation serializable;
commit;
run resource '/org/apache/derbyTesting/functionTests/tests/store/cisco.subsql';
--------------------------------------------------------------------------------
-- cleanup
--------------------------------------------------------------------------------
set connection create1;
disconnect;
set connection create2;
disconnect;
exit;