Skip to content

Commit 1fc1379

Browse files
committed
[FAB-2676] Use atomic create ledger from GB
Currently while peer joins the channel it provided the genesis block which is used to generate the ledger and consequently being committed into newly generated ledger. Currently the creation has been done in two phases. This commit switches the create ledger from the genesis block functionality to use atomic function which creates ledger with already committed block. Change-Id: I8371f9ee8f026bd98194817b48d8118c4df08dd7 Signed-off-by: Artem Barger <[email protected]>
1 parent cacb292 commit 1fc1379

File tree

1 file changed

+4
-8
lines changed

1 file changed

+4
-8
lines changed

core/peer/peer.go

+4-8
Original file line numberDiff line numberDiff line change
@@ -234,17 +234,13 @@ func CreateChainFromBlock(cb *common.Block) error {
234234
if err != nil {
235235
return err
236236
}
237-
var ledger ledger.PeerLedger
238-
if ledger, err = createLedger(cid); err != nil {
239-
return err
240-
}
241237

242-
if err := ledger.Commit(cb); err != nil {
243-
peerLogger.Errorf("Unable to get genesis block committed into the ledger, chainID %v", cid)
244-
return err
238+
var l ledger.PeerLedger
239+
if l, err = ledgermgmt.CreateWithGenesisBlock(cb); err != nil {
240+
return fmt.Errorf("Cannot create ledger from genesis block, due to %s", err)
245241
}
246242

247-
return createChain(cid, ledger, cb)
243+
return createChain(cid, l, cb)
248244
}
249245

250246
// MockCreateChain used for creating a ledger for a chain for tests

0 commit comments

Comments
 (0)