mirror of
https://we.phorge.it/source/phorge.git
synced 2024-12-29 00:40:57 +01:00
Migrate Ponder comments to ApplicationTransactions
Summary: Ref T3373. Bring the storage across. Test Plan: {F52067} Reviewers: btrahan Reviewed By: btrahan CC: aran Maniphest Tasks: T3373 Differential Revision: https://secure.phabricator.com/D6606
This commit is contained in:
parent
6172f2bbd1
commit
71841e262a
3 changed files with 92 additions and 0 deletions
86
resources/sql/patches/20130728.ponderxcomment.php
Normal file
86
resources/sql/patches/20130728.ponderxcomment.php
Normal file
|
@ -0,0 +1,86 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
$qtable = new PonderQuestionTransaction();
|
||||||
|
$atable = new PonderAnswerTransaction();
|
||||||
|
|
||||||
|
$conn_w = $qtable->establishConnection('w');
|
||||||
|
$conn_w->openTransaction();
|
||||||
|
|
||||||
|
echo "Migrating Ponder comments to ApplicationTransactions...\n";
|
||||||
|
|
||||||
|
$rows = new LiskRawMigrationIterator($conn_w, 'ponder_comment');
|
||||||
|
foreach ($rows as $row) {
|
||||||
|
|
||||||
|
$id = $row['id'];
|
||||||
|
echo "Migrating {$id}...\n";
|
||||||
|
|
||||||
|
$type = phid_get_type($row['targetPHID']);
|
||||||
|
switch ($type) {
|
||||||
|
case PonderPHIDTypeQuestion::TYPECONST:
|
||||||
|
$table_obj = $qtable;
|
||||||
|
$comment_obj = new PonderQuestionTransactionComment();
|
||||||
|
break;
|
||||||
|
case PonderPHIDTypeAnswer::TYPECONST:
|
||||||
|
$table_obj = $atable;
|
||||||
|
$comment_obj = new PonderAnswerTransactionComment();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
$comment_phid = PhabricatorPHID::generateNewPHID(
|
||||||
|
PhabricatorPHIDConstants::PHID_TYPE_XACT,
|
||||||
|
$type);
|
||||||
|
|
||||||
|
$xaction_phid = PhabricatorPHID::generateNewPHID(
|
||||||
|
PhabricatorPHIDConstants::PHID_TYPE_XACT,
|
||||||
|
$type);
|
||||||
|
|
||||||
|
queryfx(
|
||||||
|
$conn_w,
|
||||||
|
'INSERT INTO %T (phid, transactionPHID, authorPHID, viewPolicy, editPolicy,
|
||||||
|
commentVersion, content, contentSource, isDeleted, dateCreated,
|
||||||
|
dateModified)
|
||||||
|
VALUES (%s, %s, %s, %s, %s, %d, %s, %s, %d, %d, %d)',
|
||||||
|
$comment_obj->getTableName(),
|
||||||
|
$comment_phid,
|
||||||
|
$xaction_phid,
|
||||||
|
$row['authorPHID'],
|
||||||
|
'public',
|
||||||
|
$row['authorPHID'],
|
||||||
|
1,
|
||||||
|
$row['content'],
|
||||||
|
PhabricatorContentSource::newForSource(
|
||||||
|
PhabricatorContentSource::SOURCE_LEGACY,
|
||||||
|
array())->serialize(),
|
||||||
|
0,
|
||||||
|
$row['dateCreated'],
|
||||||
|
$row['dateModified']);
|
||||||
|
|
||||||
|
queryfx(
|
||||||
|
$conn_w,
|
||||||
|
'INSERT INTO %T (phid, authorPHID, objectPHID, viewPolicy, editPolicy,
|
||||||
|
commentPHID, commentVersion, transactionType, oldValue, newValue,
|
||||||
|
contentSource, metadata, dateCreated, dateModified)
|
||||||
|
VALUES (%s, %s, %s, %s, %s, %s, %d, %s, %ns, %ns, %s, %s, %d, %d)',
|
||||||
|
$table_obj->getTableName(),
|
||||||
|
$xaction_phid,
|
||||||
|
$row['authorPHID'],
|
||||||
|
$row['targetPHID'],
|
||||||
|
'public',
|
||||||
|
$row['authorPHID'],
|
||||||
|
$comment_phid,
|
||||||
|
1,
|
||||||
|
PhabricatorTransactions::TYPE_COMMENT,
|
||||||
|
'null',
|
||||||
|
'null',
|
||||||
|
PhabricatorContentSource::newForSource(
|
||||||
|
PhabricatorContentSource::SOURCE_LEGACY,
|
||||||
|
array())->serialize(),
|
||||||
|
'[]',
|
||||||
|
$row['dateCreated'],
|
||||||
|
$row['dateModified']);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
$conn_w->saveTransaction();
|
||||||
|
|
||||||
|
echo "Done.\n";
|
|
@ -124,6 +124,8 @@ final class PonderQuestionViewController extends PonderController {
|
||||||
->setUser($viewer)
|
->setUser($viewer)
|
||||||
->setObject($question);
|
->setObject($question);
|
||||||
|
|
||||||
|
$this->loadHandles(array($question->getAuthorPHID()));
|
||||||
|
|
||||||
$view->addProperty(
|
$view->addProperty(
|
||||||
pht('Status'),
|
pht('Status'),
|
||||||
PonderQuestionStatus::getQuestionStatusFullName($question->getStatus()));
|
PonderQuestionStatus::getQuestionStatusFullName($question->getStatus()));
|
||||||
|
|
|
@ -1495,6 +1495,10 @@ final class PhabricatorBuiltinPatchList extends PhabricatorSQLPatchList {
|
||||||
'type' => 'sql',
|
'type' => 'sql',
|
||||||
'name' => $this->getPatchPath('20130728.ponderuniquekey.sql'),
|
'name' => $this->getPatchPath('20130728.ponderuniquekey.sql'),
|
||||||
),
|
),
|
||||||
|
'20130728.ponderxcomment.php' => array(
|
||||||
|
'type' => 'php',
|
||||||
|
'name' => $this->getPatchPath('20130728.ponderxcomment.php'),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue