|
22 | 22 | BULK_UPSERT_MINER_TIER_STATS, |
23 | 23 | BULK_UPSERT_PULL_REQUESTS, |
24 | 24 | CLEANUP_STALE_MINER_EVALUATIONS, |
| 25 | + CLEANUP_STALE_MINER_EVALUATIONS_BY_HOTKEY, |
25 | 26 | CLEANUP_STALE_MINER_TIER_STATS, |
| 27 | + CLEANUP_STALE_MINER_TIER_STATS_BY_HOTKEY, |
26 | 28 | CLEANUP_STALE_MINERS, |
| 29 | + CLEANUP_STALE_MINERS_BY_HOTKEY, |
27 | 30 | DELETE_PREDICTIONS_FOR_ISSUE, |
28 | 31 | SET_MINER, |
29 | 32 | UPSERT_PREDICTION, |
@@ -130,10 +133,18 @@ def cleanup_stale_miner_data(self, evaluation: MinerEvaluation) -> None: |
130 | 133 | params = (evaluation.github_id, evaluation.uid, evaluation.hotkey) |
131 | 134 | eval_params = params + (evaluation.evaluation_timestamp,) |
132 | 135 |
|
| 136 | + # Clean up when same github_id re-registers on a new uid/hotkey |
133 | 137 | self.execute_command(CLEANUP_STALE_MINER_EVALUATIONS, eval_params) |
134 | 138 | self.execute_command(CLEANUP_STALE_MINER_TIER_STATS, params) |
135 | 139 | self.execute_command(CLEANUP_STALE_MINERS, params) |
136 | 140 |
|
| 141 | + # Clean up when same (uid, hotkey) re-links to a new github_id |
| 142 | + reverse_params = (evaluation.uid, evaluation.hotkey, evaluation.github_id) |
| 143 | + reverse_eval_params = reverse_params + (evaluation.evaluation_timestamp,) |
| 144 | + self.execute_command(CLEANUP_STALE_MINER_EVALUATIONS_BY_HOTKEY, reverse_eval_params) |
| 145 | + self.execute_command(CLEANUP_STALE_MINER_TIER_STATS_BY_HOTKEY, reverse_params) |
| 146 | + self.execute_command(CLEANUP_STALE_MINERS_BY_HOTKEY, reverse_params) |
| 147 | + |
137 | 148 | def store_pull_requests_bulk(self, pull_requests: List[PullRequest]) -> int: |
138 | 149 | """ |
139 | 150 | Bulk insert/update pull requests with efficient SQL conflict resolution |
|
0 commit comments