Update schema to PSR-2
This commit is contained in:
@@ -1,18 +1,17 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
// when db schema modifications are done, this function is run.
|
// when db schema modifications are done, this function is run.
|
||||||
|
$dbversion = intval($_config['dbversion']);
|
||||||
$dbversion=intval($_config['dbversion']);
|
|
||||||
$db->beginTransaction();
|
$db->beginTransaction();
|
||||||
if($dbversion==0){
|
if ($dbversion == 0) {
|
||||||
$db->run("
|
$db->run("
|
||||||
CREATE TABLE `accounts` (
|
CREATE TABLE `accounts` (
|
||||||
`id` varbinary(128) NOT NULL,
|
`id` varbinary(128) NOT NULL,
|
||||||
`public_key` varbinary(1024) NOT NULL,
|
`public_key` varbinary(1024) NOT NULL,
|
||||||
`block` varbinary(128) NOT NULL,
|
`block` varbinary(128) NOT NULL,
|
||||||
`balance` decimal(20,8) NOT NULL
|
`balance` decimal(20,8) NOT NULL
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT;");
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT;");
|
||||||
|
|
||||||
$db->run("CREATE TABLE `blocks` (
|
$db->run("CREATE TABLE `blocks` (
|
||||||
`id` varbinary(128) NOT NULL,
|
`id` varbinary(128) NOT NULL,
|
||||||
`generator` varbinary(128) NOT NULL,
|
`generator` varbinary(128) NOT NULL,
|
||||||
@@ -24,16 +23,16 @@ if($dbversion==0){
|
|||||||
`argon` varbinary(128) NOT NULL,
|
`argon` varbinary(128) NOT NULL,
|
||||||
`transactions` INT NOT NULL
|
`transactions` INT NOT NULL
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;");
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;");
|
||||||
|
|
||||||
$db->run("CREATE TABLE `config` (
|
$db->run("CREATE TABLE `config` (
|
||||||
`cfg` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
|
`cfg` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
|
||||||
`val` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL
|
`val` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;");
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;");
|
||||||
|
|
||||||
|
|
||||||
$db->run("INSERT INTO `config` (`cfg`, `val`) VALUES
|
$db->run("INSERT INTO `config` (`cfg`, `val`) VALUES
|
||||||
('hostname', '');");
|
('hostname', '');");
|
||||||
|
|
||||||
$db->run("INSERT INTO `config` (`cfg`, `val`) VALUES
|
$db->run("INSERT INTO `config` (`cfg`, `val`) VALUES
|
||||||
('dbversion', '1');");
|
('dbversion', '1');");
|
||||||
|
|
||||||
@@ -51,7 +50,7 @@ if($dbversion==0){
|
|||||||
`date` bigint(20) NOT NULL,
|
`date` bigint(20) NOT NULL,
|
||||||
`peer` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL
|
`peer` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;");
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;");
|
||||||
|
|
||||||
$db->run("CREATE TABLE `peers` (
|
$db->run("CREATE TABLE `peers` (
|
||||||
`id` int(11) NOT NULL,
|
`id` int(11) NOT NULL,
|
||||||
`hostname` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
|
`hostname` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
|
||||||
@@ -60,8 +59,8 @@ if($dbversion==0){
|
|||||||
`reserve` tinyint(4) NOT NULL DEFAULT 1,
|
`reserve` tinyint(4) NOT NULL DEFAULT 1,
|
||||||
`ip` varchar(45) NOT NULL
|
`ip` varchar(45) NOT NULL
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;");
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;");
|
||||||
|
|
||||||
|
|
||||||
$db->run("CREATE TABLE `transactions` (
|
$db->run("CREATE TABLE `transactions` (
|
||||||
`id` varbinary(128) NOT NULL,
|
`id` varbinary(128) NOT NULL,
|
||||||
`block` varbinary(128) NOT NULL,
|
`block` varbinary(128) NOT NULL,
|
||||||
@@ -75,75 +74,74 @@ if($dbversion==0){
|
|||||||
`date` int(11) NOT NULL,
|
`date` int(11) NOT NULL,
|
||||||
`public_key` varbinary(1024) NOT NULL
|
`public_key` varbinary(1024) NOT NULL
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;");
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;");
|
||||||
|
|
||||||
$db->run("ALTER TABLE `peers`
|
$db->run("ALTER TABLE `peers`
|
||||||
ADD PRIMARY KEY (`id`);");
|
ADD PRIMARY KEY (`id`);");
|
||||||
$db->run("ALTER TABLE `peers`
|
$db->run("ALTER TABLE `peers`
|
||||||
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;");
|
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;");
|
||||||
|
|
||||||
$db->run("ALTER TABLE `accounts`
|
$db->run("ALTER TABLE `accounts`
|
||||||
ADD PRIMARY KEY (`id`),
|
ADD PRIMARY KEY (`id`),
|
||||||
ADD KEY `accounts` (`block`);");
|
ADD KEY `accounts` (`block`);");
|
||||||
|
|
||||||
$db->run("ALTER TABLE `blocks`
|
$db->run("ALTER TABLE `blocks`
|
||||||
ADD PRIMARY KEY (`id`),
|
ADD PRIMARY KEY (`id`),
|
||||||
ADD UNIQUE KEY `height` (`height`);");
|
ADD UNIQUE KEY `height` (`height`);");
|
||||||
|
|
||||||
$db->run("ALTER TABLE `config` ADD PRIMARY KEY (`cfg`);");
|
$db->run("ALTER TABLE `config` ADD PRIMARY KEY (`cfg`);");
|
||||||
|
|
||||||
$db->run("ALTER TABLE `mempool`
|
$db->run("ALTER TABLE `mempool`
|
||||||
ADD PRIMARY KEY (`id`),
|
ADD PRIMARY KEY (`id`),
|
||||||
ADD KEY `height` (`height`);");
|
ADD KEY `height` (`height`);");
|
||||||
|
|
||||||
$db->run("ALTER TABLE `peers`
|
$db->run("ALTER TABLE `peers`
|
||||||
ADD UNIQUE KEY `hostname` (`hostname`),
|
ADD UNIQUE KEY `hostname` (`hostname`),
|
||||||
ADD UNIQUE KEY `ip` (`ip`),
|
ADD UNIQUE KEY `ip` (`ip`),
|
||||||
ADD KEY `blacklisted` (`blacklisted`),
|
ADD KEY `blacklisted` (`blacklisted`),
|
||||||
ADD KEY `ping` (`ping`),
|
ADD KEY `ping` (`ping`),
|
||||||
ADD KEY `reserve` (`reserve`);");
|
ADD KEY `reserve` (`reserve`);");
|
||||||
|
|
||||||
$db->run("ALTER TABLE `transactions`
|
$db->run("ALTER TABLE `transactions`
|
||||||
ADD PRIMARY KEY (`id`),
|
ADD PRIMARY KEY (`id`),
|
||||||
ADD KEY `block_id` (`block`);");
|
ADD KEY `block_id` (`block`);");
|
||||||
|
|
||||||
$db->run("ALTER TABLE `accounts`
|
$db->run("ALTER TABLE `accounts`
|
||||||
ADD CONSTRAINT `accounts` FOREIGN KEY (`block`) REFERENCES `blocks` (`id`) ON DELETE CASCADE;");
|
ADD CONSTRAINT `accounts` FOREIGN KEY (`block`) REFERENCES `blocks` (`id`) ON DELETE CASCADE;");
|
||||||
|
|
||||||
$db->run("ALTER TABLE `transactions`
|
$db->run("ALTER TABLE `transactions`
|
||||||
ADD CONSTRAINT `block_id` FOREIGN KEY (`block`) REFERENCES `blocks` (`id`) ON DELETE CASCADE;");
|
ADD CONSTRAINT `block_id` FOREIGN KEY (`block`) REFERENCES `blocks` (`id`) ON DELETE CASCADE;");
|
||||||
|
|
||||||
$dbversion++;
|
$dbversion++;
|
||||||
}
|
}
|
||||||
if($dbversion==1){
|
if ($dbversion == 1) {
|
||||||
$db->run("INSERT INTO `config` (`cfg`, `val`) VALUES ('sanity_last', '0');");
|
$db->run("INSERT INTO `config` (`cfg`, `val`) VALUES ('sanity_last', '0');");
|
||||||
$dbversion++;
|
$dbversion++;
|
||||||
}
|
}
|
||||||
if($dbversion==2){
|
if ($dbversion == 2) {
|
||||||
$db->run("INSERT INTO `config` (`cfg`, `val`) VALUES ('sanity_sync', '0');");
|
$db->run("INSERT INTO `config` (`cfg`, `val`) VALUES ('sanity_sync', '0');");
|
||||||
$dbversion++;
|
$dbversion++;
|
||||||
}
|
}
|
||||||
if($dbversion==3){
|
if ($dbversion == 3) {
|
||||||
$dbversion++;
|
$dbversion++;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($dbversion==4){
|
if ($dbversion == 4) {
|
||||||
$db->run("ALTER TABLE `mempool` ADD INDEX(`src`);");
|
$db->run("ALTER TABLE `mempool` ADD INDEX(`src`);");
|
||||||
$db->run("ALTER TABLE `mempool` ADD INDEX(`peer`); ");
|
$db->run("ALTER TABLE `mempool` ADD INDEX(`peer`); ");
|
||||||
$db->run("ALTER TABLE `mempool` ADD INDEX(`val`); ");
|
$db->run("ALTER TABLE `mempool` ADD INDEX(`val`); ");
|
||||||
$dbversion++;
|
$dbversion++;
|
||||||
}
|
}
|
||||||
if($dbversion==5){
|
if ($dbversion == 5) {
|
||||||
$db->run("ALTER TABLE `peers` ADD `fails` TINYINT NOT NULL DEFAULT '0' AFTER `ip`; ");
|
$db->run("ALTER TABLE `peers` ADD `fails` TINYINT NOT NULL DEFAULT '0' AFTER `ip`; ");
|
||||||
$dbversion++;
|
$dbversion++;
|
||||||
}
|
}
|
||||||
if($dbversion==6){
|
if ($dbversion == 6) {
|
||||||
$db->run("ALTER TABLE `peers` ADD `stuckfail` TINYINT(4) NOT NULL DEFAULT '0' AFTER `fails`, ADD INDEX (`stuckfail`); ");
|
$db->run("ALTER TABLE `peers` ADD `stuckfail` TINYINT(4) NOT NULL DEFAULT '0' AFTER `fails`, ADD INDEX (`stuckfail`); ");
|
||||||
$db->run("ALTER TABLE `accounts` ADD `alias` VARCHAR(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL AFTER `balance`; ");
|
$db->run("ALTER TABLE `accounts` ADD `alias` VARCHAR(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL AFTER `balance`; ");
|
||||||
$dbversion++;
|
$dbversion++;
|
||||||
}
|
}
|
||||||
// update the db version to the latest one
|
// update the db version to the latest one
|
||||||
if($dbversion!=$_config['dbversion']) $db->run("UPDATE config SET val=:val WHERE cfg='dbversion'",array(":val"=>$dbversion));
|
if ($dbversion != $_config['dbversion']) {
|
||||||
|
$db->run("UPDATE config SET val=:val WHERE cfg='dbversion'", [":val" => $dbversion]);
|
||||||
|
}
|
||||||
$db->commit();
|
$db->commit();
|
||||||
|
|
||||||
|
|
||||||
?>
|
|
||||||
|
|||||||
Reference in New Issue
Block a user