mirror of
https://github.com/ctripcorp/zeus.git
synced 2024-09-21 08:06:08 +08:00
optimize dist-lock table layout
This commit is contained in:
parent
4c012ce915
commit
2d1013792e
|
@ -616,13 +616,15 @@
|
||||||
</query-defs>
|
</query-defs>
|
||||||
</entity>
|
</entity>
|
||||||
<entity name="dist-lock" table="dist_lock" alias="dl">
|
<entity name="dist-lock" table="dist_lock" alias="dl">
|
||||||
<member name="lock-key" field="lock_key" value-type="String" length="255" nullable="false" key="true" />
|
<member name="id" field="id" value-type="long" length="19" nullable="false" key="true" auto-increment="true" />
|
||||||
|
<member name="lock-key" field="lock_key" value-type="String" length="255" nullable="false" />
|
||||||
<member name="owner" field="owner" value-type="long" length="19" />
|
<member name="owner" field="owner" value-type="long" length="19" />
|
||||||
<member name="server" field="server" value-type="String" length="50" />
|
<member name="server" field="server" value-type="String" length="50" />
|
||||||
<member name="created-time" field="created_time" value-type="long" length="19" />
|
<member name="created-time" field="created_time" value-type="long" length="19" />
|
||||||
<member name="data-change-last-time" field="DataChange_LastTime" value-type="Date" nullable="false" />
|
<member name="data-change-last-time" field="DataChange_LastTime" value-type="Date" nullable="false" />
|
||||||
<var name="key-lock-key" value-type="String" key-member="lock-key" />
|
<var name="key-id" value-type="long" key-member="id" />
|
||||||
<primary-key name="PRIMARY" members="lock_key" />
|
<primary-key name="PRIMARY" members="id" />
|
||||||
|
<index name="lock_key" unique="true" members="lock_key ASC" />
|
||||||
<index name="idx_DataChange_LastTime" members="DataChange_LastTime ASC" />
|
<index name="idx_DataChange_LastTime" members="DataChange_LastTime ASC" />
|
||||||
<readsets>
|
<readsets>
|
||||||
<readset name="FULL" all="true" />
|
<readset name="FULL" all="true" />
|
||||||
|
@ -632,25 +634,25 @@
|
||||||
</updatesets>
|
</updatesets>
|
||||||
<query-defs>
|
<query-defs>
|
||||||
<query name="find-by-PK" type="SELECT">
|
<query name="find-by-PK" type="SELECT">
|
||||||
<param name="key-lock-key" />
|
<param name="key-id" />
|
||||||
<statement><![CDATA[SELECT <FIELDS/>
|
<statement><![CDATA[SELECT <FIELDS/>
|
||||||
FROM <TABLE/>
|
FROM <TABLE/>
|
||||||
WHERE <FIELD name='lock-key'/> = ${key-lock-key}]]></statement>
|
WHERE <FIELD name='id'/> = ${key-id}]]></statement>
|
||||||
</query>
|
</query>
|
||||||
<query name="insert" type="INSERT">
|
<query name="insert" type="INSERT">
|
||||||
<statement><![CDATA[INSERT INTO <TABLE/>(<FIELDS/>)
|
<statement><![CDATA[INSERT INTO <TABLE/>(<FIELDS/>)
|
||||||
VALUES(<VALUES/>)]]></statement>
|
VALUES(<VALUES/>)]]></statement>
|
||||||
</query>
|
</query>
|
||||||
<query name="update-by-PK" type="UPDATE">
|
<query name="update-by-PK" type="UPDATE">
|
||||||
<param name="key-lock-key" />
|
<param name="key-id" />
|
||||||
<statement><![CDATA[UPDATE <TABLE/>
|
<statement><![CDATA[UPDATE <TABLE/>
|
||||||
SET <FIELDS/>
|
SET <FIELDS/>
|
||||||
WHERE <FIELD name='lock-key'/> = ${key-lock-key}]]></statement>
|
WHERE <FIELD name='id'/> = ${key-id}]]></statement>
|
||||||
</query>
|
</query>
|
||||||
<query name="delete-by-PK" type="DELETE">
|
<query name="delete-by-PK" type="DELETE">
|
||||||
<param name="key-lock-key" />
|
<param name="key-id" />
|
||||||
<statement><![CDATA[DELETE FROM <TABLE/>
|
<statement><![CDATA[DELETE FROM <TABLE/>
|
||||||
WHERE <FIELD name='lock-key'/> = ${key-lock-key}]]></statement>
|
WHERE <FIELD name='id'/> = ${key-id}]]></statement>
|
||||||
</query>
|
</query>
|
||||||
</query-defs>
|
</query-defs>
|
||||||
</entity>
|
</entity>
|
||||||
|
|
|
@ -254,14 +254,16 @@ CREATE TABLE IF NOT EXISTS `conf_slb_active` (
|
||||||
|
|
||||||
-- Dumping structure for table dist_lock
|
-- Dumping structure for table dist_lock
|
||||||
DROP TABLE IF EXISTS `dist_lock`;
|
DROP TABLE IF EXISTS `dist_lock`;
|
||||||
CREATE TABLE IF NOT EXISTS `dist_lock` (
|
CREATE TABLE `dist_lock` (
|
||||||
`lock_key` varchar(255) NOT NULL DEFAULT 'UNKNOWN' COMMENT 'lock key',
|
`id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 'primary key',
|
||||||
`owner` bigint(20) DEFAULT '0' COMMENT 'thread id',
|
`lock_key` VARCHAR(255) NOT NULL DEFAULT 'UNKNOWN' COMMENT 'lock key',
|
||||||
`server` varchar(50) DEFAULT '0' COMMENT 'server ip',
|
`owner` BIGINT(20) NULL DEFAULT '0' COMMENT 'thread id',
|
||||||
`created_time` bigint(20) DEFAULT NULL COMMENT 'create time',
|
`server` VARCHAR(50) NULL DEFAULT '0' COMMENT 'server ip',
|
||||||
`DataChange_LastTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'update time',
|
`created_time` BIGINT(20) NULL DEFAULT NULL COMMENT 'create time',
|
||||||
PRIMARY KEY (`lock_key`),
|
`DataChange_LastTime` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'update time',
|
||||||
KEY `idx_DataChange_LastTime` (`DataChange_LastTime`)
|
PRIMARY KEY (`id`),
|
||||||
|
UNIQUE INDEX `lock_key` (`lock_key`),
|
||||||
|
INDEX `idx_DataChange_LastTime` (`DataChange_LastTime`)
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='distribution lock';
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='distribution lock';
|
||||||
|
|
||||||
-- Data exporting was unselected.
|
-- Data exporting was unselected.
|
||||||
|
|
Loading…
Reference in a new issue