| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- -- -------------------------------- The script used when storeMode is 'db' --------------------------------
- -- the table to store GlobalSession data
- CREATE TABLE IF NOT EXISTS public.global_table
- (
- xid VARCHAR(128) NOT NULL,
- transaction_id BIGINT,
- status SMALLINT NOT NULL,
- application_id VARCHAR(32),
- transaction_service_group VARCHAR(32),
- transaction_name VARCHAR(128),
- timeout INT,
- begin_time BIGINT,
- application_data VARCHAR(2000),
- gmt_create TIMESTAMP(0),
- gmt_modified TIMESTAMP(0),
- CONSTRAINT pk_global_table PRIMARY KEY (xid)
- );
- CREATE INDEX idx_status_gmt_modified ON public.global_table (status, gmt_modified);
- CREATE INDEX idx_transaction_id ON public.global_table (transaction_id);
- -- the table to store BranchSession data
- CREATE TABLE IF NOT EXISTS public.branch_table
- (
- branch_id BIGINT NOT NULL,
- xid VARCHAR(128) NOT NULL,
- transaction_id BIGINT,
- resource_group_id VARCHAR(32),
- resource_id VARCHAR(256),
- branch_type VARCHAR(8),
- status SMALLINT,
- client_id VARCHAR(64),
- application_data VARCHAR(2000),
- gmt_create TIMESTAMP(6),
- gmt_modified TIMESTAMP(6),
- CONSTRAINT pk_branch_table PRIMARY KEY (branch_id)
- );
- CREATE INDEX idx_xid ON public.branch_table (xid);
- -- the table to store lock data
- CREATE TABLE IF NOT EXISTS public.lock_table
- (
- row_key VARCHAR(128) NOT NULL,
- xid VARCHAR(128),
- transaction_id BIGINT,
- branch_id BIGINT NOT NULL,
- resource_id VARCHAR(256),
- table_name VARCHAR(32),
- pk VARCHAR(36),
- status SMALLINT NOT NULL DEFAULT 0,
- gmt_create TIMESTAMP(0),
- gmt_modified TIMESTAMP(0),
- CONSTRAINT pk_lock_table PRIMARY KEY (row_key)
- );
- comment on column public.lock_table.status is '0:locked ,1:rollbacking';
- CREATE INDEX idx_branch_id ON public.lock_table (branch_id);
- CREATE INDEX idx_xid ON public.lock_table (xid);
- CREATE INDEX idx_status ON public.lock_table (status);
- CREATE TABLE distributed_lock (
- lock_key VARCHAR(20) NOT NULL,
- lock_value VARCHAR(20) NOT NULL,
- expire BIGINT NOT NULL,
- CONSTRAINT pk_distributed_lock_table PRIMARY KEY (lock_key)
- );
- INSERT INTO distributed_lock (lock_key, lock_value, expire) VALUES ('AsyncCommitting', ' ', 0);
- INSERT INTO distributed_lock (lock_key, lock_value, expire) VALUES ('RetryCommitting', ' ', 0);
- INSERT INTO distributed_lock (lock_key, lock_value, expire) VALUES ('RetryRollbacking', ' ', 0);
- INSERT INTO distributed_lock (lock_key, lock_value, expire) VALUES ('TxTimeoutCheck', ' ', 0);
|