Daniel Liu
c8c39efb63
core: remove unnecessary log copy ( #27475 )
2024-12-28 10:45:00 +08:00
Daniel Liu
d03859d49e
core: update the fast block on chain import at the end of the fast sync phase ( #23576 )
2024-12-28 10:44:54 +08:00
Daniel Liu
2baadc6e87
core: improve shutdown synchronization in BlockChain ( #22853 )
2024-12-28 10:44:49 +08:00
Daniel Liu
2d5dc550d0
core/rawdb: rename WriteTxLookupEntries to WriteTxLookupEntriesByBlock ( #21480 )
2024-12-28 10:44:42 +08:00
Daniel Liu
d7e0e9d734
core: write chain data in atomic way ( #20287 )
2024-12-28 10:44:36 +08:00
Daniel Liu
1c555b2def
core, light: get rid of the dual mutexes ( #18436 )
2024-12-28 10:44:30 +08:00
Daniel Liu
6e33633d28
common: drop BigMin and BigMax, they pollute our dep graph ( #30645 )
2024-12-28 09:06:31 +08:00
Daniel Liu
6ec35b9644
all: get rid of custom MaxUint64 and MaxUint64 ( #30636 )
2024-12-28 09:06:31 +08:00
Daniel Liu
ff13d16fe5
core/vm: make structlog/json-log stack hex again ( #28628 )
2024-12-28 09:06:31 +08:00
Daniel Liu
4cc2b2ea5f
tests/fuzzers: move fuzzers into native packages ( #28467 )
2024-12-28 09:06:31 +08:00
Daniel Liu
441f8ed70c
common: add variable MaxHash ( #28306 )
2024-12-28 09:06:31 +08:00
Péter Szilágyi
39e9d8f94d
common/prque: generic priority queue ( #26290 )
2024-12-28 09:06:31 +08:00
Daniel Liu
28739d7863
common: remove usage of deprecated function ( #21610 )
2024-12-28 09:06:30 +08:00
Daniel Liu
56e242b06c
core/state: optimize some internals during encoding ( #20038 )
2024-12-28 09:06:30 +08:00
Daniel Liu
cd1ff5d322
common: remove function Big() for type Address ( #19210 )
2024-12-28 09:06:30 +08:00
Daniel Liu
f19422e1c7
cmd/utils: relinquish GC cache to read cache in archive mode ( #18991 )
2024-12-28 09:06:30 +08:00
Daniel Liu
89c51c5e69
common: improve documentation comments ( #16701 )
2024-12-28 09:06:30 +08:00
Daniel Liu
240757a1ce
all: remove empty function SaveData()
2024-12-28 09:04:02 +08:00
JukLee0ira
48d1f22fde
all: simplify function TransitionDb ( #20830 )
2024-12-28 09:02:48 +08:00
liam.lai
77f9cc59ec
merge from dev-upgrade
2024-12-27 10:03:54 -08:00
Daniel Liu
e2afaec8b0
core: remove unused variables in BlockChain struct
2024-12-25 17:25:51 +08:00
Daniel Liu
a5c48e77bd
core: remove unused function writeHeader
2024-12-25 17:22:28 +08:00
Daniel Liu
6114a3a13b
core: remove unused function reorgTxMatches
2024-12-25 17:17:25 +08:00
liam.lai
00785b096f
fix tc cross epoch different masternode counts issue
2024-12-22 19:34:09 -08:00
Daniel Liu
82ff8c19a0
all: remove uses of untyped golang-lru
2024-12-21 14:39:26 +08:00
JukLee0ira
7491a7ba74
all: improve EstimateGas API ( #20830 )
2024-12-21 14:35:44 +08:00
Daniel Liu
2220156b9a
cmd, core, metrics: always report expensive metrics ( #29191 )
...
* cmd, core, metrics: always report expensive metrics
* core, metrics: report block processing metrics as resetting timer
* metrics: update reporter tests
2024-12-13 14:00:13 +08:00
Daniel Liu
35380508fc
metrics, cmd/geth: informational metrics (prometheus, influxdb, opentsb) ( #24877 )
...
This chang creates a GaugeInfo metrics type for registering informational (textual) metrics, e.g. geth version number. It also improves the testing for backend-exporters, and uses a shared subpackage in 'internal' to provide sample datasets and ordered registry.
Implements #21783
---------
Co-authored-by: Martin Holst Swende <martin@swende.se>
2024-12-13 14:00:13 +08:00
Daniel Liu
1eb2ed8293
core, metrics, p2p: expose various counter metrics for grafana ( #19692 )
2024-12-13 14:00:11 +08:00
Daniel Liu
db9487f1e8
core: split out detailed trie access metrics from insertion time ( #19316 )
2024-12-13 14:00:11 +08:00
Daniel Liu
4202f23897
core: more detailed metrics for block processing ( #18119 )
2024-12-13 14:00:11 +08:00
Daniel Liu
ad5e7d6db3
crypto: add SignatureLength constant and use it everywhere ( #19996 )
2024-12-09 17:48:59 +08:00
Daniel Liu
92fc843683
crypto: switch over to upstream sha3 package ( #18390 )
2024-12-09 17:48:59 +08:00
Daniel Liu
733c298b0e
core/vm: improve EVM reusability ( #26341 )
2024-12-09 17:47:05 +08:00
Daniel Liu
0d0ea46bfa
core: implement EIP-3651, warm coinbase ( #25819 )
2024-12-09 17:44:30 +08:00
Daniel Liu
4855f19261
core: fix preCheck for RandomizeSMC after EIP-1559
2024-11-19 14:19:57 +08:00
Daniel Liu
4cac1865ba
all: remove noop vm config flags ( #23111 )
2024-11-15 20:12:49 +08:00
Daniel Liu
ed242b4763
all: implement EIP-1153 transient storage ( #26003 )
2024-11-15 19:39:18 +08:00
Daniel Liu
aedfea681b
all: make logs a bit easier on the eye to digest ( #22665 )
2024-11-15 10:02:41 +08:00
Daniel Liu
c254b08443
core/txpool: fix very high pending special transactions
2024-11-07 17:47:59 +08:00
Daniel Liu
da9d2e29f5
core/types: fix discrepancy in receipt.EffectiveGasPrice json encoding tags ( #27114 )
2024-11-01 11:36:53 +08:00
Daniel Liu
a294c2080d
all: fix null effectiveGasPrice
2024-11-01 11:36:53 +08:00
Daniel Liu
2a9d450101
core/types: add EffectiveGasPrice in Receipt ( #26713 )
2024-11-01 11:36:53 +08:00
Daniel Liu
9b20ac785e
consensus/misc: move eip1559 into a package ( #27828 )
2024-11-01 11:36:53 +08:00
Daniel Liu
f64aea4ba0
core/vm: implement EIP-3860: Limit and meter initcode ( #23847 )
2024-11-01 11:36:53 +08:00
Péter Szilágyi
cda663db64
core/types: rename tx files to group them better together ( #26044 )
2024-11-01 11:36:53 +08:00
Daniel Liu
8b2e8d9b3a
all: refactor txpool into it's own package in prep for 4844 ( #26038 )
2024-11-01 11:36:53 +08:00
Martin Holst Swende
05797846fc
core: fix datarace in txpool, fixes #25870 and #25869 ( #25872 )
...
core: fix datarace in txpool pendingnoce, fixes #25870
2024-11-01 11:36:53 +08:00
Seungbae Yu
66763aa8ae
core: don't cache zero nonce in txNoncer ( #25603 )
...
This changes the nonce cache used by TxPool to not store cached
nonces for non-existing accounts.
2024-11-01 11:36:53 +08:00
Seungbae Yu
a410f7b38e
core: preallocate maps in TxPool helper methods ( #25737 )
2024-11-01 11:36:53 +08:00
aaronbuchwald
7237811928
core: fix typo in txpool ( #25149 )
...
Fix typo in txPool truncateQueue comment
2024-11-01 11:36:53 +08:00
zhaochonghe
dc94ad52f6
core: fix the order of address in queue ( #24908 )
...
reverse the order of address in queue
2024-11-01 11:36:53 +08:00
Emmanuel T Odeke
59bc3bfd09
eth/tracers/logger: remove unnecessary comparisons in accessList.equal ( #24663 )
...
This change removes extraneous/unnecessary checks for equality
when comparing 2 accessList values A and B. Given that we validate that
their lengths of A and B are equal, if so and if every element in A is
in B, reflexively every element in B is already in A. If that weren't
the case and an element g existed in A but not in B, that would mean
that there is an extra element and hence a mathematical contradiction.
Fixes #24658
2024-11-01 11:36:53 +08:00
Daniel Liu
7cb33cc57d
core/types: improve error for too short transaction / receipt encoding ( #24256 )
2024-11-01 11:36:53 +08:00
Daniel Liu
d1dc9e383c
core/statedb: always clear out access list when setting a new one ( #24515 )
2024-11-01 11:36:53 +08:00
Daniel Liu
8eaa9e2c3b
core/types: document JSON field name equivalents of DynamicFeeTx ( #24143 )
2024-11-01 11:36:53 +08:00
Daniel Liu
bdae20085a
core: ignore basefee when comparing with pool gasprice in txpool ( #24080 )
2024-11-01 11:36:53 +08:00
Daniel Liu
6feb71e5c8
core: check effective tip in txpool pricelimit validation ( #23855 )
2024-11-01 11:36:53 +08:00
Martin Holst Swende
81dff92ced
core: more efficient nonce-update in txpool ( #22231 )
...
* Adjust pending nonce update operation
Benchmark the speed of transaction insertion under multiple accounts
core: fix rebase issues + docstring
core: make benchmark test use sync:ed method
* core: address review comments
* core: add memreport to benchmark
Co-authored-by: WeiLoy <wei_loy@163.com>
2024-11-01 11:36:53 +08:00
Daniel Liu
a402cbf50e
core/types: add MarshalBinary, UnmarshalBinary for Receipt ( #22806 )
2024-11-01 11:36:53 +08:00
Daniel Liu
e5fb0b4d73
core: remove unused error from TxPool.Pending ( #23720 )
2024-11-01 11:36:53 +08:00
Daniel Liu
17b62319c0
core/types: copy tx recipient address ( #23376 )
2024-11-01 11:36:53 +08:00
Daniel Liu
e18e6111af
core: add change counter ( #23095 )
2024-11-01 11:36:53 +08:00
Daniel Liu
d850fc4081
core: only check sendernoeoa in non fake mode ( #23424 )
2024-11-01 11:36:53 +08:00
Daniel Liu
d6daac576d
core: check if sender is EOA ( #23303 )
2024-11-01 11:36:53 +08:00
Daniel Liu
206175fb43
all: remove term whitelist in comments and log messages ( #23294 )
2024-11-01 11:36:52 +08:00
Daniel Liu
62a70f0cde
internal/ethapi: fix panic in accesslist creation ( #23225 )
2024-11-01 11:36:52 +08:00
Daniel Liu
43a0cdf7ce
core: fix pre-check for account balance under EIP-1559 ( #23244 )
2024-11-01 11:36:52 +08:00
Daniel Liu
5b01b23af6
internal: get pending and queued transaction by address ( #22992 )
2024-11-01 11:36:52 +08:00
Daniel Liu
b02922fc53
core, internal: expose effectiveGasPrice in receipts ( #23050 )
2024-11-01 11:36:52 +08:00
Daniel Liu
dbdca11501
accounts/abi/bind: fix bounded contracts and sim backend for 1559 ( #23038 )
2024-11-01 11:36:52 +08:00
Daniel Liu
1cb1ba79d7
core: change baseFee into baseFeePerGas in genesis json ( #23039 )
2024-11-01 11:36:52 +08:00
Daniel Liu
05c11eb96e
core: make genesis parse baseFee correctly ( #23013 )
2024-11-01 11:36:52 +08:00
Daniel Liu
6b67327a4b
tests: update for London ( #22976 )
2024-11-01 11:36:52 +08:00
Daniel Liu
1c47afb286
core/vm/runtime: add function TestColdAccountAccessCost
2024-11-01 11:36:52 +08:00
Daniel Liu
c7d49072f1
core/vm: evm fix panic ( #23047 )
2024-11-01 11:36:52 +08:00
Daniel Liu
18bc355e89
core, internal: support various eth_call invocations post 1559 ( #23027 )
2024-11-01 11:36:52 +08:00
Daniel Liu
4c096de9b0
all: rename internal 1559 gas fields ( #23010 )
2024-11-01 11:36:52 +08:00
Daniel Liu
5a31888b19
core, eth, miner: enforce configured mining reward post 1559 too ( #22995 )
2024-11-01 11:36:52 +08:00
Daniel Liu
bfd1c0c9e0
core, eth, internal, les: RPC methods and fields for EIP 1559 ( #22964 )
2024-11-01 11:36:52 +08:00
Daniel Liu
4f0317cb1f
core: add new eip-1559 tx constraints ( #22970 )
2024-11-01 11:36:52 +08:00
Daniel Liu
f6a4769084
EIP-1559 tx pool support ( #22898 )
2024-11-01 11:36:52 +08:00
Daniel Liu
d88d2670e5
core: make txpool free space calculation more accurate ( #22933 )
2024-11-01 11:36:52 +08:00
Daniel Liu
684afd0b18
EIP-1559: miner changes ( #22896 )
2024-11-01 11:36:52 +08:00
Daniel Liu
4e7fd897d8
core: fix failing tests ( #22888 )
2024-11-01 11:36:52 +08:00
Daniel Liu
e18553b855
all: implement eip-1559 ( #22837 )
2024-11-01 11:36:52 +08:00
Daniel Liu
6a3b818069
core, params: implement EIP-3529 ( #22733 )
2024-11-01 11:36:52 +08:00
Martin Holst Swende
b5fe81f093
core/vm: make gas cost reporting to tracers correct ( #22702 )
...
Previously, the makeCallVariantGasCallEIP2929 charged the cold account access cost directly, leading to an incorrect gas cost passed to the tracer from the main execution loop.
This change still temporarily charges the cost (to allow for an accurate calculation of the available gas for the call), but then afterwards refunds it and instead returns the correct total gas cost to be then properly charged in the main loop.
2024-11-01 11:36:52 +08:00
Daniel Liu
6c77d63dc2
core/types: replace core.SetReceiptsData with receipts.DeriveFields
2024-11-01 11:36:52 +08:00
Daniel Liu
e561f2842e
core/types: drop type v4StoredReceiptRLP
2024-11-01 11:36:52 +08:00
Daniel Liu
b7154dd450
core: fix staticcheck warning S1006: use for {} for infinite loops
2024-10-31 16:49:56 +08:00
Daniel Liu
11285be830
all: fix staticcheck warning SA2002: must call T.Fatalf in same goroutine
2024-10-31 10:38:38 +08:00
Daniel Liu
6b6f0bd891
core, XDCxlending/lendingstate: fix staticcheck warning SA5001: must check error before rpcClient.Close()
2024-10-31 10:28:21 +08:00
Daniel Liu
371c3b6874
fix tautological condition: non-nil != nil
2024-10-31 09:01:12 +08:00
Daniel Liu
2306ceafb2
fix impossible condition: nil != nil
2024-10-31 09:01:12 +08:00
Daniel Liu
212daafe17
core: fix staticcheck warning SA6005: should use strings.EqualFold
2024-10-30 21:13:58 +08:00
Daniel Liu
181b23a767
core, XDCxlending/lendingstate: fix staticcheck warning S1002: omit comparison to bool constant
2024-10-30 21:02:41 +08:00
Daniel Liu
fbecb8c5a5
all: fix staticcheck warning ST1006: don't use generic name self
...
The name of a method’s receiver should be a reflection of its identity;
often a one or two letter abbreviation of its type suffices (such as
“c” or “cl” for “Client”). Don’t use generic names such as “me”, “this”
or “self”, identifiers typical of object-oriented languages that place
more emphasis on methods as opposed to functions. The name need not be
as descriptive as that of a method argument, as its role is obvious and
serves no documentary purpose. It can be very short as it will appear
on almost every line of every method of the type; familiarity admits
brevity. Be consistent, too: if you call the receiver “c” in one method,
don’t call it “cl” in another.
2024-10-25 21:30:54 +08:00
Daniel Liu
b68b9c64ea
Merge pull request #685 from gzliudan/emptyroot
...
all: use unified emptyRootHash and emptyCodeHash
2024-10-25 15:28:51 +08:00
Daniel Liu
87a6b5f4c3
Merge pull request #689 from gzliudan/fix-st1005
...
all: fix staticcheck warning ST1005
2024-10-25 15:28:07 +08:00
Daniel Liu
c6e4e880ea
all: fix staticcheck warning SA4006: never used value
2024-10-24 17:37:19 +08:00
Daniel Liu
a79411fa06
all: fix staticcheck warning ST1005: incorrectly formatted error string
2024-10-24 09:48:20 +08:00
Daniel Liu
464a89074b
all: use unified emptyRootHash and emptyCodeHash ( #26718 )
2024-10-21 17:55:16 +08:00
Daniel Liu
8c077345d0
all: removed blockhash from statedb ( #23126 )
2024-10-18 09:24:52 +08:00
Daniel Liu
1c84a31bb6
core/vm: deepcopy jumptable when enabling extra eips ( #26137 )
2024-10-17 11:23:04 +08:00
Daniel Liu
4482ea4d84
core/vm: fix docstrings
2024-10-17 11:23:04 +08:00
Daniel Liu
480adaf960
core/vm: minor trivial clean up ( #25880 )
2024-10-17 11:23:04 +08:00
Daniel Liu
69cb57a0f4
core/vm: not deep copy return data slice upon call completion ( #25183 )
2024-10-17 11:23:04 +08:00
Daniel Liu
ee5dd8673f
core/vm: remove empty lines
2024-10-17 11:23:04 +08:00
Daniel Liu
16f2aabc64
core/vm: more linters ( #24783 )
2024-10-17 11:23:04 +08:00
Paweł Bylica
be6631beb0
core/vm: optimize jumpdest analysis ( #23500 )
...
core/vm: optimize PUSH opcode discrimination
2024-10-17 11:23:04 +08:00
Daniel Liu
1fa9e81870
core/vm: reduce overhead in instructions-benchmark ( #24860 )
2024-10-17 11:23:04 +08:00
Daniel Liu
c78b9e6245
core/vm: for tracing, do not report post-op memory ( #24867 )
2024-10-17 11:23:04 +08:00
Daniel Liu
45c644c43d
core/vm: update benchmark to use Errorf instead of Sprintf ( #24845 )
2024-10-17 11:23:04 +08:00
Daniel Liu
6fa968201f
core/vm: fix some typos
2024-10-17 11:23:04 +08:00
Daniel Liu
224caa5a08
core/vm: avoid memory expansion check for trivial ops ( #24048 )
2024-10-17 11:23:04 +08:00
Daniel Liu
532137c37b
core/vm: use golang native big.Int ( #26834 )
2024-10-17 10:36:53 +08:00
Daniel Liu
8e15f825ce
core/vm: use optimized bigint ( #26021 )
2024-10-17 10:36:53 +08:00
Daniel Liu
c87b7c3135
common/math: optimized modexp ( #25525 )
2024-10-17 10:36:53 +08:00
Daniel Liu
b653dbc60c
core/vm, protocol_params: implement eip-2565 modexp repricing ( #21607 )
2024-10-17 10:36:53 +08:00
Daniel Liu
a8ea86e40c
Merge pull request #644 from gzliudan/format-0x
...
all: change format 0x%x to %#x
2024-10-17 10:35:34 +08:00
Daniel Liu
693190e5b9
core: fix wrong blockHash for eth_getLogs ( #650 )
2024-10-16 11:00:58 +08:00
Daniel Liu
edace6ac6c
all: change format 0x%x to %#x ( #25221 )
2024-09-27 15:24:31 +08:00
JukLee0ira
47d27fed3b
all: replace uses of ioutil with io and os ( #24869 )
2024-09-27 15:14:17 +08:00
Daniel Liu
4f9501f12c
common, crypto: move fuzzers out of core ( #22029 )
2024-09-22 19:25:37 +08:00
Daniel Liu
a5531a2470
core/vm: remove redundant conversions ( #21903 )
2024-09-22 18:42:11 +08:00
Daniel Liu
67b5b2bf9a
core/vm: less allocations for various call variants ( #21222 )
2024-09-22 18:42:11 +08:00
Daniel Liu
a575d731d3
core/vm: combine function precompile and precompile2
2024-09-21 22:40:57 +08:00
Daniel Liu
5470485450
all: split vm.Context into BlockContext and TxContext ( #21672 )
2024-09-21 22:18:10 +08:00
Daniel Liu
05e52efbad
core/vm: marshall returnData as hexstring in trace logs ( #21715 )
2024-09-21 22:14:47 +08:00
Daniel Liu
4e832ee6f0
core/vm: avoid map lookups for accessing jumpdest analysis ( #21411 )
2024-09-21 22:01:56 +08:00
Daniel Liu
a020259bb5
core/vm: fix Byzantium address list ( #22603 )
2024-09-19 13:04:55 +08:00
Wanwiset Peerapatanapokin
0e9052b2e5
Merge branch 'master' into dev-upgrade-fix-merge
2024-09-11 14:06:38 +04:00
Daniel Liu
3e4932e408
core/vm: surface some internal methods ( #20958 )
2024-08-30 12:50:04 +08:00
Daniel Liu
1f45af089a
core/vm: implement EIP 3541 ( #22809 )
2024-08-26 11:59:28 +08:00
Daniel Liu
c47819c7d6
core, cmd: add generic LRU implementation ( #26162 )
2024-08-26 11:17:23 +08:00
Daniel Liu
6f1d1b6688
core/vm: implement EIP-2681: Limit account nonce to 2^64-1 ( #23853 )
2024-08-26 09:04:15 +08:00
Wanwiset Peerapatanapokin
2b8eb6f98e
Merge pull request #619 from XinFinOrg/revert-2464-short
...
Revert EIP 2464
2024-08-25 02:23:46 +07:00
Daniel Liu
8c78a80771
core: fix race conditions in txpool ( #23474 )
2024-08-24 23:12:32 +08:00
wanwiset25
cb792ef34f
Revert EIP-2464
2024-08-24 02:31:27 +07:00
Daniel Liu
45e57e41b4
internal/ethapi: refactor func ToMessage for CallArgs
2024-08-21 15:15:53 +08:00
JukLee0ira
3f40987cca
core/rawdb: rearranging function order
2024-08-19 22:32:20 +08:00
JukLee0ira
544190f584
core: cache block hash and number
2024-08-07 14:59:36 +08:00
JukLee0ira
074095b1d5
core: fix writeBlock
2024-08-07 14:59:36 +08:00
wgr523
52077f18f3
support for golang tracers + add golang callTracer ( #558 )
...
* feat: rename Tracer interface to EVMLogger;
minor changes in API
refine api_tracer.go
refine Tracer interface
* fix: broken tracer tests
* feat: add BenchmarkTransactionTrace
* feat: tracer CaptureEnter CaptureExit in evm
* feat: upgrade js tracers with geth upstream
* chore: clean test
* feat: eth/tracers: support for golang tracers + add golang callTracer
cf. https://github.com/ethereum/go-ethereum/pull/23708
* chore: clean testdata json
* fix: change test due to IntrinsicGas is not upgraded
* feat: make native Tracer the default Tracer
* fix: update tracers.New in api
* fix: addr prefix in callTracer
* fix: remove `native` in BenchmarkTracers
* fix: return consensus error of InsufficientBalance for tx, instead of vmerr
* chore: drop js tracers: call and noop
2024-08-06 00:14:04 -07:00
JukLee0ira
9a40c26bf8
core,eth,light: remove duplicated functions
2024-08-03 10:03:22 +08:00
JukLee0ira
bea4431f6f
eth/filters: avoid block body retrieval when no matching logs ( #25199 )
2024-08-03 10:03:22 +08:00
JukLee0ira
09d3ede8c0
core: cleanup tests ( #25641 )
2024-08-03 10:03:22 +08:00
JukLee0ira
ad71d706fb
all: add global block logs cache ( #25459 )
2024-08-03 10:03:22 +08:00
JukLee0ira
f8a2b00505
core/rawdb,eth: use lightweight accessor for log filtering ( #23147 )
2024-08-03 10:03:22 +08:00