Changeset View
Changeset View
Standalone View
Standalone View
scripts/repository/rebuild_summaries.php
| Show All 16 Lines | $maxes = queryfx_all( | ||||
| $conn_w, | $conn_w, | ||||
| 'SELECT repositoryID, max(epoch) maxEpoch FROM %T GROUP BY repositoryID', | 'SELECT repositoryID, max(epoch) maxEpoch FROM %T GROUP BY repositoryID', | ||||
| $commit->getTableName()); | $commit->getTableName()); | ||||
| $maxes = ipull($maxes, 'maxEpoch', 'repositoryID'); | $maxes = ipull($maxes, 'maxEpoch', 'repositoryID'); | ||||
| $repository_ids = array_keys($sizes + $maxes); | $repository_ids = array_keys($sizes + $maxes); | ||||
| echo "Updating ".count($repository_ids)." repositories"; | echo 'Updating '.count($repository_ids).' repositories'; | ||||
| foreach ($repository_ids as $repository_id) { | foreach ($repository_ids as $repository_id) { | ||||
| $last_commit = queryfx_one( | $last_commit = queryfx_one( | ||||
| $conn_w, | $conn_w, | ||||
| 'SELECT id FROM %T WHERE repositoryID = %d AND epoch = %d LIMIT 1', | 'SELECT id FROM %T WHERE repositoryID = %d AND epoch = %d LIMIT 1', | ||||
| $commit->getTableName(), | $commit->getTableName(), | ||||
| $repository_id, | $repository_id, | ||||
| idx($maxes, $repository_id, 0)); | idx($maxes, $repository_id, 0)); | ||||
| Show All 9 Lines | 'INSERT INTO %T (repositoryID, lastCommitID, size, epoch) | ||||
| lastCommitID = VALUES(lastCommitID), | lastCommitID = VALUES(lastCommitID), | ||||
| size = VALUES(size), | size = VALUES(size), | ||||
| epoch = VALUES(epoch)', | epoch = VALUES(epoch)', | ||||
| PhabricatorRepository::TABLE_SUMMARY, | PhabricatorRepository::TABLE_SUMMARY, | ||||
| $repository_id, | $repository_id, | ||||
| $last_commit, | $last_commit, | ||||
| idx($sizes, $repository_id, 0), | idx($sizes, $repository_id, 0), | ||||
| idx($maxes, $repository_id, 0)); | idx($maxes, $repository_id, 0)); | ||||
| echo "."; | echo '.'; | ||||
| } | } | ||||
| echo "\ndone.\n"; | echo "\ndone.\n"; | ||||