diff options
author | Martin Holst Swende <martin@swende.se> | 2019-01-23 18:13:13 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-01-23 18:13:13 +0800 |
commit | 9bc0138dedf1341fc3f84d6e6f330338093d6e6e (patch) | |
tree | d547a4c300f3ae92f56c965978cd22afeec9387d | |
parent | 85a79b3ad3c5863f8612d25c246bcfad339f36b7 (diff) | |
download | go-tangerine-9bc0138dedf1341fc3f84d6e6f330338093d6e6e.tar go-tangerine-9bc0138dedf1341fc3f84d6e6f330338093d6e6e.tar.gz go-tangerine-9bc0138dedf1341fc3f84d6e6f330338093d6e6e.tar.bz2 go-tangerine-9bc0138dedf1341fc3f84d6e6f330338093d6e6e.tar.lz go-tangerine-9bc0138dedf1341fc3f84d6e6f330338093d6e6e.tar.xz go-tangerine-9bc0138dedf1341fc3f84d6e6f330338093d6e6e.tar.zst go-tangerine-9bc0138dedf1341fc3f84d6e6f330338093d6e6e.zip |
eth: properly flush files in standardTraceBlockToFile (#18502)
-rw-r--r-- | eth/api_tracer.go | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/eth/api_tracer.go b/eth/api_tracer.go index 0b8f8aa00..5096150c3 100644 --- a/eth/api_tracer.go +++ b/eth/api_tracer.go @@ -576,6 +576,7 @@ func (api *PrivateDebugAPI) standardTraceBlockToFile(ctx context.Context, block vmConf vm.Config dump *os.File + writer *bufio.Writer err error ) // If the transaction needs tracing, swap out the configs @@ -590,16 +591,19 @@ func (api *PrivateDebugAPI) standardTraceBlockToFile(ctx context.Context, block dumps = append(dumps, dump.Name()) // Swap out the noop logger to the standard tracer + writer = bufio.NewWriter(dump) vmConf = vm.Config{ Debug: true, - Tracer: vm.NewJSONLogger(&logConfig, bufio.NewWriter(dump)), + Tracer: vm.NewJSONLogger(&logConfig, writer), EnablePreimageRecording: true, } } // Execute the transaction and flush any traces to disk vmenv := vm.NewEVM(vmctx, statedb, api.config, vmConf) _, _, _, err = core.ApplyMessage(vmenv, msg, new(core.GasPool).AddGas(msg.Gas())) - + if writer != nil { + writer.Flush() + } if dump != nil { dump.Close() log.Info("Wrote standard trace", "file", dump.Name()) |