From 6d629d40e6d949d94c66e99ce62b22612ee4a763 Mon Sep 17 00:00:00 2001 From: Yuri Kuznetsov Date: Tue, 15 Sep 2020 11:01:41 +0300 Subject: [PATCH] upgrade 6.0 changes --- js/diff.js | 4 ++++ .../metadata/entityDefs/NextNumber.json | 17 +++++++++++++++++ upgrades/6.0/scripts/BeforeUpgrade.php | 18 +++++++++++++++--- 3 files changed, 36 insertions(+), 3 deletions(-) create mode 100644 upgrades/6.0/beforeUpgradeFiles/application/Espo/Resources/metadata/entityDefs/NextNumber.json diff --git a/js/diff.js b/js/diff.js index 1cf9d2de9c..9d6b9a5445 100644 --- a/js/diff.js +++ b/js/diff.js @@ -215,6 +215,10 @@ class Diff fs.mkdirSync(upgradePath + '/files'); } + if (fs.existsSync(upgradeDataFolderPath + '/beforeUpgradeFiles')) { + cp.execSync('cp -r ' + upgradeDataFolderPath + '/beforeUpgradeFiles ' + upgradePath + '/beforeUpgradeFiles'); + } + if (beforeUpgradeFileList.length) { if (!fs.existsSync(upgradePath + '/beforeUpgradeFiles')) { fs.mkdirSync(upgradePath + '/beforeUpgradeFiles'); diff --git a/upgrades/6.0/beforeUpgradeFiles/application/Espo/Resources/metadata/entityDefs/NextNumber.json b/upgrades/6.0/beforeUpgradeFiles/application/Espo/Resources/metadata/entityDefs/NextNumber.json new file mode 100644 index 0000000000..116e40866a --- /dev/null +++ b/upgrades/6.0/beforeUpgradeFiles/application/Espo/Resources/metadata/entityDefs/NextNumber.json @@ -0,0 +1,17 @@ +{ + "fields": { + "entityType": { + "type": "varchar", + "index": true, + "maxLength": 100 + }, + "fieldName": { + "type": "varchar", + "maxLength": 100 + }, + "value": { + "type": "int", + "default": 1 + } + } +} diff --git a/upgrades/6.0/scripts/BeforeUpgrade.php b/upgrades/6.0/scripts/BeforeUpgrade.php index bb7d31699d..711c5ddd5e 100644 --- a/upgrades/6.0/scripts/BeforeUpgrade.php +++ b/upgrades/6.0/scripts/BeforeUpgrade.php @@ -36,6 +36,8 @@ class BeforeUpgrade $this->container = $container; $this->processMyIsamCheck(); + + $this->processNextNumberAlterTable(); } protected function processMyIsamCheck() @@ -73,7 +75,6 @@ class BeforeUpgrade $databaseInfo = $container->get('config')->get('database'); try { - $sth = $pdo->prepare(" SELECT TABLE_NAME as tableName FROM information_schema.TABLES @@ -82,8 +83,8 @@ class BeforeUpgrade "); $sth->execute(); - - }catch (Exception $e) { + } + catch (Exception $e) { return []; } @@ -95,4 +96,15 @@ class BeforeUpgrade return $tableList; } + + protected function processNextNumberAlterTable() + { + $pdo = $this->container->get('entityManager')->getPDO(); + + $q1 = "ALTER TABLE `next_number` CHANGE `entity_type` `entity_type` VARCHAR(100)"; + $q2 = "ALTER TABLE `next_number` CHANGE `field_name` `field_name` VARCHAR(100)"; + + $pdo->exec($q1); + $pdo->exec($q2); + } }