mirror of
https://github.com/mempool/mempool.git
synced 2025-01-18 21:32:55 +01:00
DB migration to fix bad v1 audits
This commit is contained in:
parent
248cef7718
commit
c9171224e1
@ -7,7 +7,7 @@ import cpfpRepository from '../repositories/CpfpRepository';
|
|||||||
import { RowDataPacket } from 'mysql2';
|
import { RowDataPacket } from 'mysql2';
|
||||||
|
|
||||||
class DatabaseMigration {
|
class DatabaseMigration {
|
||||||
private static currentVersion = 81;
|
private static currentVersion = 82;
|
||||||
private queryTimeout = 3600_000;
|
private queryTimeout = 3600_000;
|
||||||
private statisticsAddedIndexed = false;
|
private statisticsAddedIndexed = false;
|
||||||
private uniqueLogs: string[] = [];
|
private uniqueLogs: string[] = [];
|
||||||
@ -700,6 +700,11 @@ class DatabaseMigration {
|
|||||||
await this.$executeQuery('ALTER TABLE `blocks_audits` ADD unseen_txs JSON DEFAULT "[]"');
|
await this.$executeQuery('ALTER TABLE `blocks_audits` ADD unseen_txs JSON DEFAULT "[]"');
|
||||||
await this.updateToSchemaVersion(81);
|
await this.updateToSchemaVersion(81);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (databaseSchemaVersion < 82 && isBitcoin === true && config.MEMPOOL.NETWORK === 'mainnet') {
|
||||||
|
await this.$fixBadV1AuditBlocks();
|
||||||
|
await this.updateToSchemaVersion(82);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -1314,6 +1319,28 @@ class DatabaseMigration {
|
|||||||
logger.warn(`Failed to migrate cpfp transaction data`);
|
logger.warn(`Failed to migrate cpfp transaction data`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private async $fixBadV1AuditBlocks(): Promise<void> {
|
||||||
|
const badBlocks = [
|
||||||
|
'000000000000000000011ad49227fc8c9ba0ca96ad2ebce41a862f9a244478dc',
|
||||||
|
'000000000000000000010ac1f68b3080153f2826ffddc87ceffdd68ed97d6960',
|
||||||
|
'000000000000000000024cbdafeb2660ae8bd2947d166e7fe15d1689e86b2cf7',
|
||||||
|
'00000000000000000002e1dbfbf6ae057f331992a058b822644b368034f87286',
|
||||||
|
'0000000000000000000019973b2778f08ad6d21e083302ff0833d17066921ebb',
|
||||||
|
];
|
||||||
|
|
||||||
|
for (const hash of badBlocks) {
|
||||||
|
try {
|
||||||
|
await this.$executeQuery(`
|
||||||
|
UPDATE blocks_audits
|
||||||
|
SET prioritized_txs = '[]'
|
||||||
|
WHERE hash = '${hash}'
|
||||||
|
`, true);
|
||||||
|
} catch (e) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export default new DatabaseMigration();
|
export default new DatabaseMigration();
|
||||||
|
Loading…
Reference in New Issue
Block a user