protected function loadPage() { $table = new ReleephRequest(); $conn_r = $table->establishConnection('r'); $data = queryfx_all($conn_r, 'SELECT * FROM %T %Q %Q %Q', $table->getTableName(), $this->buildWhereClause($conn_r), $this->buildOrderClause($conn_r), $this->buildLimitClause($conn_r)); return $table->loadAllFromArray($data); }
<?php $pull_table = new ReleephRequest(); $table_name = $pull_table->getTableName(); $conn_w = $pull_table->establishConnection('w'); echo "Setting object PHIDs for requests...\n"; foreach (new LiskMigrationIterator($pull_table) as $pull) { $id = $pull->getID(); echo "Migrating pull request {$id}...\n"; if ($pull->getRequestedObjectPHID()) { // We already have a valid PHID, so skip this request. continue; } $commit_phids = $pull->getCommitPHIDs(); if (count($commit_phids) != 1) { // At the time this migration was written, all requests had exactly one // commit. If a request has more than one, we don't have the information // we need to process it. continue; } $commit_phid = head($commit_phids); $revision_phids = PhabricatorEdgeQuery::loadDestinationPHIDs($commit_phid, PhabricatorEdgeConfig::TYPE_COMMIT_HAS_DREV); if ($revision_phids) { $object_phid = head($revision_phids); } else { $object_phid = $commit_phid; } queryfx($conn_w, 'UPDATE %T SET requestedObjectPHID = %s WHERE id = %d', $table_name, $object_phid, $id); } echo "Done.\n";