mirror of
https://we.phorge.it/source/phorge.git
synced 2024-12-28 08:20:57 +01:00
Add custom field storage to Projects
Summary: Ref T4010. Adds storage and indexes for custom fields. These tables are the same as people/maniphest/differential. Test Plan: Ran `bin/storage upgrade`. Reviewers: chad, btrahan Reviewed By: chad CC: aran Maniphest Tasks: T4010 Differential Revision: https://secure.phabricator.com/D7369
This commit is contained in:
parent
8994a81b35
commit
cf1c06e157
5 changed files with 66 additions and 0 deletions
29
resources/sql/patches/20131020.pcustom.sql
Normal file
29
resources/sql/patches/20131020.pcustom.sql
Normal file
|
@ -0,0 +1,29 @@
|
|||
CREATE TABLE {$NAMESPACE}_project.project_customfieldstorage (
|
||||
id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||
objectPHID VARCHAR(64) NOT NULL COLLATE utf8_bin,
|
||||
fieldIndex CHAR(12) NOT NULL COLLATE utf8_bin,
|
||||
fieldValue LONGTEXT NOT NULL,
|
||||
UNIQUE KEY (objectPHID, fieldIndex)
|
||||
) ENGINE=InnoDB, COLLATE utf8_general_ci;
|
||||
|
||||
CREATE TABLE {$NAMESPACE}_project.project_customfieldstringindex (
|
||||
id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||
objectPHID VARCHAR(64) NOT NULL COLLATE utf8_bin,
|
||||
indexKey VARCHAR(12) NOT NULL COLLATE utf8_bin,
|
||||
indexValue LONGTEXT NOT NULL COLLATE utf8_general_ci,
|
||||
|
||||
KEY `key_join` (objectPHID, indexKey, indexValue(64)),
|
||||
KEY `key_find` (indexKey, indexValue(64))
|
||||
|
||||
) ENGINE=InnoDB, COLLATE utf8_general_ci;
|
||||
|
||||
CREATE TABLE {$NAMESPACE}_project.project_customfieldnumericindex (
|
||||
id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||
objectPHID VARCHAR(64) NOT NULL COLLATE utf8_bin,
|
||||
indexKey VARCHAR(12) NOT NULL COLLATE utf8_bin,
|
||||
indexValue BIGINT NOT NULL,
|
||||
|
||||
KEY `key_join` (objectPHID, indexKey, indexValue),
|
||||
KEY `key_find` (indexKey, indexValue)
|
||||
|
||||
) ENGINE=InnoDB, COLLATE utf8_general_ci;
|
|
@ -0,0 +1,11 @@
|
|||
<?php
|
||||
|
||||
final class PhabricatorProjectCustomFieldNumericIndex
|
||||
extends PhabricatorCustomFieldNumericIndexStorage {
|
||||
|
||||
public function getApplicationName() {
|
||||
return 'project';
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?php
|
||||
|
||||
final class PhabricatorProjectCustomFieldStorage
|
||||
extends PhabricatorCustomFieldStorage {
|
||||
|
||||
public function getApplicationName() {
|
||||
return 'project';
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?php
|
||||
|
||||
final class PhabricatorProjectCustomFieldStringIndex
|
||||
extends PhabricatorCustomFieldStringIndexStorage {
|
||||
|
||||
public function getApplicationName() {
|
||||
return 'project';
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -1684,6 +1684,10 @@ final class PhabricatorBuiltinPatchList extends PhabricatorSQLPatchList {
|
|||
'type' => 'php',
|
||||
'name' => $this->getPatchPath('20130926.dinline.php'),
|
||||
),
|
||||
'20131020.pcustom.sql' => array(
|
||||
'type' => 'sql',
|
||||
'name' => $this->getPatchPath('20131020.pcustom.sql'),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue