Commit Graph

12736 Commits

Author SHA1 Message Date
zjubfd
1540ad932d
fix nil point in downloader (#409) 2021-09-06 10:37:16 +08:00
dylanhuang
2d2740e2a2
Merge pull request #399 from j75689/fix/issue_388
fix: nil pointer issue (#388)
2021-09-01 22:04:04 +08:00
j75689
6e960cc850 Revert "fix potential deadlock of pub/sub module"
This reverts commit 3d3f9694a426eafc32640a643b5399a58209da1c.
2021-08-31 16:59:46 +08:00
dylanhuang
3a8bf73b0b
Merge pull request #398 from j75689/release_ci_pipeline
ci pipeline for release page
2021-08-31 14:07:45 +08:00
j75689
55775d9aee ci pipeline for release page 2021-08-31 12:07:24 +08:00
zjubfd
c4f9312129
prepare for release 1.1.2 (#381) v1.1.2 2021-08-25 10:13:43 +08:00
kyrie-yl
8fd77bcdcd
Merge pull request #379 from guagualvcha/faster_analysis
[R4R]core/vm: faster code analysis (#23381)
2021-08-24 18:59:25 +08:00
Martin Holst Swende
57632c94e8 core/vm: faster code analysis (#23381)
* core/vm: more detailed benchmark for jumpdest analysis

* core/vm: make jd analysis benchmark alloc free

* core/vm: improve jumpdest analysis

* core/vm: improve worst-case

* core/vm: further improvements in analysis

* core/vm: improve jumpdest analysis >PUSH15

* core/vm: make jd analysis ref by value

* core/vm: fix misspell

* core/vm: improve set8 and set16 a bit

* core/vm: reduce amount of code

* core/vm: optimize byte copying
2021-08-24 15:55:20 +08:00
Alexandr
804c853537
fix: tracing system transactions failed due to wrong state (#374)
* fixed wrong state creation which resulted in fail of tracing transaction

* sorted package imports

* added the check to `standardTraceBlockToFile` that resolves the #314

Co-authored-by: alexqrid <>
2021-08-22 18:55:04 +08:00
zjubfd
03f7b318d9
format changelog (#367) v1.1.1 2021-08-13 10:37:58 +08:00
zjubfd
a3320d6f6e
prepare release v1.1.1 (#362) 2021-08-13 10:20:35 +08:00
zjubfd
504424dc7c
fix doube close channel of subfetcher (#366) 2021-08-13 10:18:17 +08:00
kyrie-yl
8d5f2ba90d
Merge pull request #360 from guagualvcha/fix_win_prune
fix syc failed on windows when prune
2021-08-10 21:28:14 +08:00
fudongbai
29707b9252 fix syc failed on windows when prune 2021-08-10 15:19:32 +08:00
zjubfd
6fcce0dce9
fix pending block null issue (#358) 2021-08-10 12:03:15 +08:00
zjubfd
955c78bde0
[R4R] the miner module should propose block on a proper fork (#355)
* change Canon chain condition

* resolve comment
2021-08-10 10:33:00 +08:00
barryz
3bd4e29954
fix: TriesInmemory specified but not work (#350)
* fix: TriesInmemory specified but not work

* change warning log when TriesInMemory isn't default
2021-08-09 13:48:43 +08:00
zjubfd
69ce7f1e5e
prepare release 1.1.1-beta (#334) v1.1.1-beta 2021-07-29 18:53:24 +08:00
dylanhuang
7e8d9fb51d
fix: block fetcher efficiency (#333) 2021-07-29 17:17:11 +08:00
zjubfd
2ce00adb55
[R4R] performance improvement in many aspects (#257)
* focus on performance improvement in many aspects.

1. Do BlockBody verification concurrently;
2. Do calculation of intermediate root concurrently;
3. Preload accounts before processing blocks;
4. Make the snapshot layers configurable.
5. Reuse some object to reduce GC.

add

* rlp: improve decoder stream implementation (#22858)

This commit makes various cleanup changes to rlp.Stream.

* rlp: shrink Stream struct

This removes a lot of unused padding space in Stream by reordering the
fields. The size of Stream changes from 120 bytes to 88 bytes. Stream
instances are internally cached and reused using sync.Pool, so this does
not improve performance.

* rlp: simplify list stack

The list stack kept track of the size of the current list context as
well as the current offset into it. The size had to be stored in the
stack in order to subtract it from the remaining bytes of any enclosing
list in ListEnd. It seems that this can be implemented in a simpler
way: just subtract the size from the enclosing list context in List instead.

* rlp: use atomic.Value for type cache (#22902)

All encoding/decoding operations read the type cache to find the
writer/decoder function responsible for a type. When analyzing CPU
profiles of geth during sync, I found that the use of sync.RWMutex in
cache lookups appears in the profiles. It seems we are running into
CPU cache contention problems when package rlp is heavily used
on all CPU cores during sync.

This change makes it use atomic.Value + a writer lock instead of
sync.RWMutex. In the common case where the typeinfo entry is present in
the cache, we simply fetch the map and lookup the type.

* rlp: optimize byte array handling (#22924)

This change improves the performance of encoding/decoding [N]byte.

    name                     old time/op    new time/op    delta
    DecodeByteArrayStruct-8     336ns ± 0%     246ns ± 0%  -26.98%  (p=0.000 n=9+10)
    EncodeByteArrayStruct-8     225ns ± 1%     148ns ± 1%  -34.12%  (p=0.000 n=10+10)

    name                     old alloc/op   new alloc/op   delta
    DecodeByteArrayStruct-8      120B ± 0%       48B ± 0%  -60.00%  (p=0.000 n=10+10)
    EncodeByteArrayStruct-8     0.00B          0.00B          ~     (all equal)

* rlp: optimize big.Int decoding for size <= 32 bytes (#22927)

This change grows the static integer buffer in Stream to 32 bytes,
making it possible to decode 256bit integers without allocating a
temporary buffer.

In the recent commit 088da24, Stream struct size decreased from 120
bytes down to 88 bytes. This commit grows the struct to 112 bytes again,
but the size change will not degrade performance because Stream
instances are internally cached in sync.Pool.

    name             old time/op    new time/op    delta
    DecodeBigInts-8    12.2µs ± 0%     8.6µs ± 4%  -29.58%  (p=0.000 n=9+10)

    name             old speed      new speed      delta
    DecodeBigInts-8   230MB/s ± 0%   326MB/s ± 4%  +42.04%  (p=0.000 n=9+10)

* eth/protocols/eth, les: avoid Raw() when decoding HashOrNumber (#22841)

Getting the raw value is not necessary to decode this type, and
decoding it directly from the stream is faster.

* fix testcase

* debug no lazy

* fix can not repair

* address comments

Co-authored-by: Felix Lange <fjl@twurst.com>
2021-07-29 17:16:53 +08:00
John.h
f124267144
eth/tracers: improve tracing performance (#23016) (#326)
* eth/tracers: improve tracing performance (#23016)

Improves the performance of debug.traceTransaction

* Update the import order

Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: John.H <john.h@binance.com>
2021-07-29 17:08:41 +08:00
dylanhuang
7822e9e2a1
Merge pull request #324 from binance-chain/release_v1.1.0
Release v1.1.0 stable version
v1.1.0
2021-07-26 14:10:10 +08:00
j75689
7c2cca285b release v1.1.0 2021-07-26 12:51:46 +08:00
zjubfd
6ce2cef425
Merge pull request #282 from binance-chain/discord_link
[R4R]update discord link
2021-06-10 15:42:55 +08:00
fudongbai
1bde62fe87 update discord link 2021-06-10 14:00:06 +08:00
zjubfd
3a87f6256a
Merge pull request #280 from binance-chain/discord_link
[R4R]update discord link
2021-06-10 10:34:28 +08:00
fudongbai
72dfda0e88 update discord link 2021-06-10 10:19:17 +08:00
zjubfd
b67a129e5b
Merge pull request #227 from binance-chain/cache_write_policy
[R4R]use more aggressive write cache policy
2021-05-24 16:28:11 +08:00
fudongbai
571a317092 fix ungraceful shutdown issue 2021-05-19 11:46:46 +08:00
fudongbai
1f3e0606ee use more aggressive write cache policy 2021-05-17 19:32:39 +08:00
zjubfd
032970b2de
Merge pull request #152 from binance-chain/upgrade_1.10.2
[R4R] Upgrade to 1.10.3
v1.1.0-beta
2021-05-10 17:11:01 +08:00
fudongbai
3ab97c2a83 disable log of snap update 2021-05-10 17:10:11 +08:00
fudongbai
5a1338f93f change log to debug when gas limti exceet 25M 2021-05-10 16:31:58 +08:00
fudongbai
75447df58d update hardware requirement 2021-05-10 15:49:17 +08:00
yutianwu
9188475be1 update version 2021-05-10 15:27:05 +08:00
yutianwu
d33134439e fix conflicts 2021-05-08 10:27:56 +08:00
zjubfd
e3c241a049
Merge pull request #196 from binance-chain/release_v1.0.7-hf.2
[R4R]prepare release  v1.0.7-hf.2
v1.0.7-hf.2
2021-05-08 10:11:43 +08:00
fudongbai
ce7fc00b8a prepare release v1.0.7-hf.2 2021-05-08 08:36:37 +08:00
zjubfd
5cbe77fada
Merge pull request #194 from binance-chain/btcd_v0.20.1-beta
[R4R]bump btcd to v0.20.1-beta
2021-05-08 00:09:01 +08:00
fudongbai
1d0fe2a924 bump btcd to v0.20.1-beta 2021-05-08 00:04:14 +08:00
yutianwu
a4bb482a74 bump version to 1.1.0 2021-05-07 18:41:10 +08:00
zjubfd
60035da613
Merge pull request #192 from binance-chain/release_1.0.7-hf.1
[R4r]prepare for release v1.0.7-hf.1
v1.0.7-hf.1
2021-05-07 18:31:53 +08:00
fudongbai
552207ed9a prepare for release v1.0.7-hf.1 2021-05-07 18:00:29 +08:00
yutianwu
3ddedad500 fix comments 2021-05-07 14:31:06 +08:00
yutianwu
f3ad96d46a fix conflicts 2021-05-07 13:55:21 +08:00
zjubfd
8362792981
Merge pull request #191 from binance-chain/stuck_issue
[R4R]fix the reorg routine stuck issue
2021-05-07 11:32:00 +08:00
fudongbai
f7d69f2ac1 fix the reorg routine stuck issue 2021-05-07 11:04:31 +08:00
zjubfd
68bde410b7
Merge pull request #190 from binance-chain/disk_increase_fix
[R4R]fix disk increase dramaticly issue
2021-05-07 10:57:23 +08:00
fudongbai
744dfd61ad fix disk increase dramaticly issue 2021-05-07 10:48:48 +08:00
zjubfd
031607200a
Merge pull request #186 from binance-chain/upgrade_tmp
[R4R] make prune tool available
2021-05-06 12:00:34 +08:00