script/client/saga/db/mysql.sql (59 lines of code) (raw):

-- -- 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. -- -- -------------------------------- The script used for sage -------------------------------- CREATE TABLE IF NOT EXISTS `seata_state_machine_def` ( `id` VARCHAR(32) NOT NULL COMMENT 'id', `name` VARCHAR(128) NOT NULL COMMENT 'name', `tenant_id` VARCHAR(32) NOT NULL COMMENT 'tenant id', `app_name` VARCHAR(32) NOT NULL COMMENT 'application name', `type` VARCHAR(20) COMMENT 'state language type', `comment_` VARCHAR(255) COMMENT 'comment', `ver` VARCHAR(16) NOT NULL COMMENT 'version', `gmt_create` DATETIME(3) NOT NULL COMMENT 'create time', `status` VARCHAR(2) NOT NULL COMMENT 'status(AC:active|IN:inactive)', `content` TEXT COMMENT 'content', `recover_strategy` VARCHAR(16) COMMENT 'transaction recover strategy(compensate|retry)', PRIMARY KEY (`id`) ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4; CREATE TABLE IF NOT EXISTS `seata_state_machine_inst` ( `id` VARCHAR(128) NOT NULL COMMENT 'id', `machine_id` VARCHAR(32) NOT NULL COMMENT 'state machine definition id', `tenant_id` VARCHAR(32) NOT NULL COMMENT 'tenant id', `parent_id` VARCHAR(128) COMMENT 'parent id', `gmt_started` DATETIME(3) NOT NULL COMMENT 'start time', `business_key` VARCHAR(48) COMMENT 'business key', `start_params` TEXT COMMENT 'start parameters', `gmt_end` DATETIME(3) COMMENT 'end time', `excep` BLOB COMMENT 'exception', `end_params` TEXT COMMENT 'end parameters', `status` VARCHAR(2) COMMENT 'status(SU succeed|FA failed|UN unknown|SK skipped|RU running)', `compensation_status` VARCHAR(2) COMMENT 'compensation status(SU succeed|FA failed|UN unknown|SK skipped|RU running)', `is_running` TINYINT(1) COMMENT 'is running(0 no|1 yes)', `gmt_updated` DATETIME(3) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `unikey_buz_tenant` (`business_key`, `tenant_id`) ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4; CREATE TABLE IF NOT EXISTS `seata_state_inst` ( `id` VARCHAR(48) NOT NULL COMMENT 'id', `machine_inst_id` VARCHAR(128) NOT NULL COMMENT 'state machine instance id', `name` VARCHAR(128) NOT NULL COMMENT 'state name', `type` VARCHAR(20) COMMENT 'state type', `service_name` VARCHAR(128) COMMENT 'service name', `service_method` VARCHAR(128) COMMENT 'method name', `service_type` VARCHAR(16) COMMENT 'service type', `business_key` VARCHAR(48) COMMENT 'business key', `state_id_compensated_for` VARCHAR(50) COMMENT 'state compensated for', `state_id_retried_for` VARCHAR(50) COMMENT 'state retried for', `gmt_started` DATETIME(3) NOT NULL COMMENT 'start time', `is_for_update` TINYINT(1) COMMENT 'is service for update', `input_params` TEXT COMMENT 'input parameters', `output_params` TEXT COMMENT 'output parameters', `status` VARCHAR(2) NOT NULL COMMENT 'status(SU succeed|FA failed|UN unknown|SK skipped|RU running)', `excep` BLOB COMMENT 'exception', `gmt_updated` DATETIME(3) COMMENT 'update time', `gmt_end` DATETIME(3) COMMENT 'end time', PRIMARY KEY (`id`, `machine_inst_id`) ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;