diff --git a/process/elasticproc/block/blockProcessor.go b/process/elasticproc/block/blockProcessor.go index 5b9cbb93..a1541029 100644 --- a/process/elasticproc/block/blockProcessor.go +++ b/process/elasticproc/block/blockProcessor.go @@ -90,7 +90,7 @@ func (bp *blockProcessor) PrepareBlockForDB(obh *outport.OutportBlockWithHeader) Hash: hex.EncodeToString(obh.BlockData.HeaderHash), MiniBlocksHashes: miniblocksHashes, NotarizedBlocksHashes: obh.NotarizedHeadersHashes, - Proposer: obh.LeaderIndex, + Proposer: getLeaderIndex(obh), ProposerBlsKey: hex.EncodeToString(obh.LeaderBLSKey), Validators: obh.SignersIndexes, PubKeyBitmap: hex.EncodeToString(obh.Header.GetPubKeysBitmap()), @@ -142,6 +142,18 @@ func (bp *blockProcessor) PrepareBlockForDB(obh *outport.OutportBlockWithHeader) return elasticBlock, nil } +func getLeaderIndex(obh *outport.OutportBlockWithHeader) uint64 { + if obh.BlockData.HeaderProof != nil { + return obh.LeaderIndex + } + + if len(obh.SignersIndexes) > 0 { + return obh.SignersIndexes[0] + } + + return 0 +} + func addProofs(elasticBlock *data.Block, obh *outport.OutportBlockWithHeader) { if obh.BlockData.HeaderProof != nil { elasticBlock.Proof = proofToAPIProof(obh.BlockData.HeaderProof)