mirror of
https://github.com/vacp2p/linea-besu.git
synced 2026-01-09 15:37:54 -05:00
This reverts commit 6a546c5e6f.
Signed-off-by: Karim Taam <karim.t2am@gmail.com>
This commit is contained in:
@@ -20,6 +20,7 @@ import static org.hyperledger.besu.ethereum.mainnet.feemarket.ExcessBlobGasCalcu
|
||||
import org.hyperledger.besu.datatypes.BlobGas;
|
||||
import org.hyperledger.besu.datatypes.Hash;
|
||||
import org.hyperledger.besu.datatypes.Wei;
|
||||
import org.hyperledger.besu.ethereum.api.jsonrpc.internal.methods.TraceBlock.ChainUpdater;
|
||||
import org.hyperledger.besu.ethereum.api.jsonrpc.internal.processor.Tracer;
|
||||
import org.hyperledger.besu.ethereum.api.query.BlockchainQueries;
|
||||
import org.hyperledger.besu.ethereum.chain.Blockchain;
|
||||
@@ -155,14 +156,14 @@ public class TraceServiceImpl implements TraceService {
|
||||
blocks.get(0).getHash(),
|
||||
traceableState -> {
|
||||
final WorldUpdater worldStateUpdater = traceableState.updater();
|
||||
final ChainUpdater chainUpdater = new ChainUpdater(traceableState, worldStateUpdater);
|
||||
beforeTracing.accept(worldStateUpdater);
|
||||
final List<TransactionProcessingResult> results = new ArrayList<>();
|
||||
blocks.forEach(
|
||||
block -> {
|
||||
results.addAll(trace(blockchain, block, worldStateUpdater, tracer));
|
||||
worldStateUpdater.commit();
|
||||
results.addAll(trace(blockchain, block, chainUpdater, tracer));
|
||||
});
|
||||
afterTracing.accept(worldStateUpdater);
|
||||
afterTracing.accept(chainUpdater.getNextUpdater());
|
||||
return Optional.of(results);
|
||||
});
|
||||
}
|
||||
@@ -177,7 +178,7 @@ public class TraceServiceImpl implements TraceService {
|
||||
blockchainQueries,
|
||||
block.getHash(),
|
||||
traceableState ->
|
||||
Optional.of(trace(blockchain, block, traceableState.updater(), tracer)));
|
||||
Optional.of(trace(blockchain, block, new ChainUpdater(traceableState), tracer)));
|
||||
|
||||
return results;
|
||||
}
|
||||
@@ -185,7 +186,7 @@ public class TraceServiceImpl implements TraceService {
|
||||
private List<TransactionProcessingResult> trace(
|
||||
final Blockchain blockchain,
|
||||
final Block block,
|
||||
final WorldUpdater worldUpdater,
|
||||
final ChainUpdater chainUpdater,
|
||||
final BlockAwareOperationTracer tracer) {
|
||||
final List<TransactionProcessingResult> results = new ArrayList<>();
|
||||
final ProtocolSpec protocolSpec = protocolSchedule.getByBlockHeader(block.getHeader());
|
||||
@@ -208,6 +209,7 @@ public class TraceServiceImpl implements TraceService {
|
||||
.map(parent -> calculateExcessBlobGasForParent(protocolSpec, parent))
|
||||
.orElse(BlobGas.ZERO));
|
||||
|
||||
final WorldUpdater worldUpdater = chainUpdater.getNextUpdater();
|
||||
final TransactionProcessingResult result =
|
||||
transactionProcessor.processTransaction(
|
||||
worldUpdater,
|
||||
|
||||
Reference in New Issue
Block a user