MCPcopy Create free account
hub / github.com/DNAProject/DNA / initLedger

Function initLedger

main.go:252–277  ·  view source on GitHub ↗
(ctx *cli.Context, stateHashHeight uint32)

Source from the content-addressed store, hash-verified

250}
251
252func initLedger(ctx *cli.Context, stateHashHeight uint32) (*ledger.Ledger, error) {
253 events.Init() //Init event hub
254
255 var err error
256 dbDir := utils.GetStoreDirPath(config.DefConfig.Common.DataDir, config.DefConfig.P2PNode.NetworkName)
257 ledger.DefLedger, err = ledger.NewLedger(dbDir, stateHashHeight)
258 if err != nil {
259 return nil, fmt.Errorf("NewLedger error: %s", err)
260 }
261 bookKeepers, err := config.DefConfig.GetBookkeepers()
262 if err != nil {
263 return nil, fmt.Errorf("GetBookkeepers error: %s", err)
264 }
265 genesisConfig := config.DefConfig.Genesis
266 genesisBlock, err := genesis.BuildGenesisBlock(bookKeepers, genesisConfig)
267 if err != nil {
268 return nil, fmt.Errorf("genesisBlock error %s", err)
269 }
270 err = ledger.DefLedger.Init(bookKeepers, genesisBlock)
271 if err != nil {
272 return nil, fmt.Errorf("Init ledger error: %s", err)
273 }
274
275 log.Infof("Ledger init success")
276 return ledger.DefLedger, nil
277}
278
279func initTxPool(ctx *cli.Context) (*proc.TXPoolServer, error) {
280 disablePreExec := ctx.GlobalBool(utils.GetFlagName(utils.TxpoolPreExecDisableFlag))

Callers 1

startDNAFunction · 0.85

Calls 8

InitFunction · 0.92
GetStoreDirPathFunction · 0.92
NewLedgerFunction · 0.92
BuildGenesisBlockFunction · 0.92
ErrorfMethod · 0.80
GetBookkeepersMethod · 0.80
InfofMethod · 0.80
InitMethod · 0.45

Tested by

no test coverage detected