warn on errors, skip coinbase inputs

This commit is contained in:
Jan Pochyla 2017-10-09 13:23:19 +02:00
parent ecff25db56
commit dc5eed1595

View File

@ -166,9 +166,14 @@ func (d *RocksDB) writeOutputs(
for address, outpoints := range records { for address, outpoints := range records {
key, err := packOutputKey(address, block.Height) key, err := packOutputKey(address, block.Height)
if err != nil { if err != nil {
return err log.Printf("rocksdb: warning: %v", err)
continue
} }
val, err := packOutputValue(outpoints) val, err := packOutputValue(outpoints)
if err != nil {
log.Printf("rocksdb: warning: %v", err)
continue
}
switch op { switch op {
case opInsert: case opInsert:
@ -234,6 +239,9 @@ func (d *RocksDB) writeInputs(
) error { ) error {
for _, tx := range block.Txs { for _, tx := range block.Txs {
for i, input := range tx.Vin { for i, input := range tx.Vin {
if input.Coinbase != "" {
continue
}
key, err := packOutpoint(input.Txid, input.Vout) key, err := packOutpoint(input.Txid, input.Vout)
if err != nil { if err != nil {
return err return err