mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-25 08:12:40 +01:00
8c99938aad
Test Plan: Ran the migration on a single revision, verified DB, called `loadUnsubscribedPHIDs()`. Reviewers: epriestley Reviewed By: epriestley CC: aran, Korvin Differential Revision: https://secure.phabricator.com/D4786
33 lines
811 B
PHP
33 lines
811 B
PHP
<?php
|
|
|
|
echo "Migrating Differential unsubscribed users to edges...\n";
|
|
$table = new DifferentialRevision();
|
|
$table->openTransaction();
|
|
|
|
// We couldn't use new LiskMigrationIterator($table) because the $unsubscribed
|
|
// property gets deleted.
|
|
$revs = queryfx_all(
|
|
$table->establishConnection('w'),
|
|
'SELECT id, phid, unsubscribed FROM differential_revision');
|
|
|
|
foreach ($revs as $rev) {
|
|
echo ".";
|
|
|
|
$unsubscribed = json_decode($rev['unsubscribed']);
|
|
if (!$unsubscribed) {
|
|
continue;
|
|
}
|
|
|
|
$editor = new PhabricatorEdgeEditor();
|
|
$editor->setSuppressEvents(true);
|
|
foreach ($unsubscribed as $user_phid => $_) {
|
|
$editor->addEdge(
|
|
$rev['phid'],
|
|
PhabricatorEdgeConfig::TYPE_OBJECT_HAS_UNSUBSCRIBER,
|
|
$user_phid);
|
|
}
|
|
$editor->save();
|
|
}
|
|
|
|
$table->saveTransaction();
|
|
echo "Done.\n";
|