From 3dfee9be0c992ea794abcf35ba207d56b588285e Mon Sep 17 00:00:00 2001 From: acolytec3 <17355484+acolytec3@users.noreply.github.com> Date: Wed, 3 May 2023 19:52:48 -0400 Subject: [PATCH] Wrap level in db interface --- packages/client/bin/cli.ts | 3 ++- packages/client/lib/blockchain/chain.ts | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/client/bin/cli.ts b/packages/client/bin/cli.ts index 348a79f79f..c8c6299915 100755 --- a/packages/client/bin/cli.ts +++ b/packages/client/bin/cli.ts @@ -24,6 +24,7 @@ import * as readline from 'readline' import { EthereumClient } from '../lib/client' import { Config, DataDirectory, SyncMode } from '../lib/config' +import { LevelDB } from '../lib/execution/level' import { getLogger } from '../lib/logging' import { Event } from '../lib/types' import { parseMultiaddrs } from '../lib/util' @@ -424,7 +425,7 @@ async function startClient(config: Config, customGenesisState?: GenesisState) { if (customGenesisState !== undefined) { const validateConsensus = config.chainCommon.consensusAlgorithm() === ConsensusAlgorithm.Clique blockchain = await Blockchain.create({ - db: dbs.chainDB as any, + db: new LevelDB(dbs.chainDB), genesisState: customGenesisState, common: config.chainCommon, hardforkByHeadBlockNumber: true, diff --git a/packages/client/lib/blockchain/chain.ts b/packages/client/lib/blockchain/chain.ts index 08d1362cf6..6260441e9a 100644 --- a/packages/client/lib/blockchain/chain.ts +++ b/packages/client/lib/blockchain/chain.ts @@ -3,6 +3,7 @@ import { Blockchain } from '@ethereumjs/blockchain' import { ConsensusAlgorithm, Hardfork } from '@ethereumjs/common' import { equalsBytes } from 'ethereum-cryptography/utils' +import { LevelDB } from '../execution/level' import { Event } from '../types' import type { Config } from '../config' @@ -133,7 +134,7 @@ export class Chain { options.blockchain = options.blockchain ?? new (Blockchain as any)({ - db: options.chainDB, + db: new LevelDB(options.chainDB), common: options.config.chainCommon, hardforkByHeadBlockNumber: true, validateBlocks: true, @@ -213,7 +214,7 @@ export class Chain { */ async open(): Promise { if (this.opened) return false - await (this.blockchain.db as any)?.open() + await this.blockchain.db.open() await (this.blockchain as any)._init() this.opened = true await this.update(false)