Index coinbase signature in ascii

This commit is contained in:
nymkappa 2023-02-23 08:50:30 +09:00
parent b2eaa7efb1
commit 75a99568bf
No known key found for this signature in database
GPG Key ID: E155910B16E8BD04
4 changed files with 7 additions and 2 deletions

View File

@ -218,9 +218,11 @@ class Blocks {
if (blk.extras.coinbaseTx.vout.length > 0) { if (blk.extras.coinbaseTx.vout.length > 0) {
blk.extras.coinbaseAddress = blk.extras.coinbaseTx.vout[0].scriptpubkey_address ?? null; blk.extras.coinbaseAddress = blk.extras.coinbaseTx.vout[0].scriptpubkey_address ?? null;
blk.extras.coinbaseSignature = blk.extras.coinbaseTx.vout[0].scriptpubkey_asm ?? null; blk.extras.coinbaseSignature = blk.extras.coinbaseTx.vout[0].scriptpubkey_asm ?? null;
blk.extras.coinbaseSignatureAscii = transactionUtils.hex2ascii(blk.extras.coinbaseTx.vin[0].scriptsig) ?? null;
} else { } else {
blk.extras.coinbaseAddress = null; blk.extras.coinbaseAddress = null;
blk.extras.coinbaseSignature = null; blk.extras.coinbaseSignature = null;
blk.extras.coinbaseSignatureAscii = null;
} }
const header = await bitcoinClient.getBlockHeader(block.id, false); const header = await bitcoinClient.getBlockHeader(block.id, false);

View File

@ -767,6 +767,7 @@ class DatabaseMigration {
ADD block_time int unsigned NOT NULL, ADD block_time int unsigned NOT NULL,
ADD coinbase_address varchar(100) NULL, ADD coinbase_address varchar(100) NULL,
ADD coinbase_signature varchar(500) NULL, ADD coinbase_signature varchar(500) NULL,
ADD coinbase_signature_ascii varchar(500) NULL,
ADD avg_tx_size double unsigned NOT NULL, ADD avg_tx_size double unsigned NOT NULL,
ADD total_inputs int unsigned NOT NULL, ADD total_inputs int unsigned NOT NULL,
ADD total_outputs int unsigned NOT NULL, ADD total_outputs int unsigned NOT NULL,

View File

@ -167,6 +167,7 @@ export interface BlockExtension {
orphans?: OrphanedBlock[] | null; orphans?: OrphanedBlock[] | null;
coinbaseAddress?: string | null; coinbaseAddress?: string | null;
coinbaseSignature?: string | null; coinbaseSignature?: string | null;
coinbaseSignatureAscii?: string | null;
virtualSize?: number; virtualSize?: number;
avgTxSize?: number; avgTxSize?: number;
totalInputs?: number; totalInputs?: number;

View File

@ -27,7 +27,7 @@ class BlocksRepository {
coinbase_signature, utxoset_size, utxoset_change, avg_tx_size, coinbase_signature, utxoset_size, utxoset_change, avg_tx_size,
total_inputs, total_outputs, total_input_amt, total_output_amt, total_inputs, total_outputs, total_input_amt, total_output_amt,
fee_percentiles, segwit_total_txs, segwit_total_size, segwit_total_weight, fee_percentiles, segwit_total_txs, segwit_total_size, segwit_total_weight,
median_fee_amt median_fee_amt, coinbase_signature_ascii
) VALUE ( ) VALUE (
?, ?, FROM_UNIXTIME(?), ?, ?, ?, FROM_UNIXTIME(?), ?,
?, ?, ?, ?, ?, ?, ?, ?,
@ -38,7 +38,7 @@ class BlocksRepository {
?, ?, ?, ?, ?, ?, ?, ?,
?, ?, ?, ?, ?, ?, ?, ?,
?, ?, ?, ?, ?, ?, ?, ?,
? ?, ?
)`; )`;
const params: any[] = [ const params: any[] = [
@ -79,6 +79,7 @@ class BlocksRepository {
block.extras.segwitTotalSize, block.extras.segwitTotalSize,
block.extras.segwitTotalWeight, block.extras.segwitTotalWeight,
block.extras.medianFeeAmt, block.extras.medianFeeAmt,
block.extras.coinbaseSignatureAscii,
]; ];
await DB.query(query, params); await DB.query(query, params);