- 10 7月, 2020 2 次提交
-
-
由 Felix Lange 提交于
-
由 gary rong 提交于
Fixes #20535 Co-authored-by: NFelix Lange <fjl@twurst.com>
-
- 09 7月, 2020 4 次提交
-
-
由 rene 提交于
-
由 Felix Lange 提交于
This is a resubmit of ledgerwatch/turbo-geth#556. The performance benefit of this change is negligible, but it does remove a TODO.
-
由 Felix Lange 提交于
Reverting because this change started handling account balances as uint64 in the transaction pool, which is incorrect. This reverts commit af5c97ae.
-
由 Martin Holst Swende 提交于
This fixes two issues with state sync restarts: When sync restarts with a new root, some peers can have in-flight requests. Since all peers with active requests were marked idle when exiting sync, the new sync would schedule more requests for those peers. When the response for the earlier request arrived, the new sync would reject it and mark the peer idle again, rendering the peer useless until it disconnected. The other issue was that peers would not be marked idle when they had delivered a response, but the response hadn't been processed before restarting the state sync. This also made the peer useless because it would be permanently marked busy. Co-authored-by: NFelix Lange <fjl@twurst.com>
-
- 08 7月, 2020 3 次提交
-
-
由 ucwong 提交于
-
由 Martin Holst Swende 提交于
-
由 chris-j-h 提交于
-
- 07 7月, 2020 3 次提交
-
-
由 Adam Schmideg 提交于
This adds a test suite for discovery v4. The test suite is a port of the Hive suite for discovery, and will replace the current suite on Hive soon-ish. The tests can be run locally with this command: devp2p discv4 test -remote enode//... Co-authored-by: NFelix Lange <fjl@twurst.com>
-
由 chris-j-h 提交于
Changes include: * Updates response docs for `account_new`, `account_list`, `account_signTransaction` * Removes `account_import`, `account_export` docs * Adds `account_version` docs * Updates request docs for `ui_approveListing`, `ui_approveSignData`, `ui_showInfo`, `ui_showError`, `ui_onApprovedTx` * Adds `ui_approveNewAccount`, `ui_onInputRequired` docs
-
由 gary rong 提交于
-
- 06 7月, 2020 1 次提交
-
-
由 Felix Lange 提交于
This change further improves the performance of RLP encoding by removing allocations for big.Int and [...]byte types. I have added a new benchmark that measures RLP encoding of types.Block to verify that performance is improved.
-
- 05 7月, 2020 1 次提交
-
-
由 Martin Holst Swende 提交于
-
- 04 7月, 2020 1 次提交
-
-
由 meowsbits 提交于
Exposing /debug/metrics and /debug/metrics/prometheus was dependent on --pprof, which also exposes other HTTP APIs. This change makes it possible to run the metrics server on an independent endpoint without enabling pprof.
-
- 03 7月, 2020 1 次提交
-
-
由 gary rong 提交于
This PR reduces the bandwidth used by the light client to compute the recommended gas price. The current mechanism for suggesting the price is: - retrieve recent 20 blocks - get the lowest gas price of these blocks - sort the price array and return the middle(60%) one This works for full nodes, which have all blocks available locally. However, this is very expensive for the light client because the light client needs to retrieve block bodies from the network. The PR changes the default options for light client. With the new config, the light client only retrieves the two latest blocks, but in order to collect more sample transactions, the 3 lowest prices are collected from each block. This PR also changes the behavior for empty blocks. If the block is empty, the lastest price is reused for sampling.
-
- 02 7月, 2020 5 次提交
-
-
由 Martin Holst Swende 提交于
* les/checkpointoracle: don't lookup checkpoint more than once per second * les/checkpoint/oracle: change oracle checktime to 1 minute
-
由 Martin Holst Swende 提交于
* console: prevent importRawKey from getting into CLI history * internal/ethapi: error on keystore-methods when no keystore is present
-
由 Martin Holst Swende 提交于
-
由 Martin Holst Swende 提交于
* rpc, internal/ethapi: default rpc gascap at 50M + better error message * eth,internal: make globalgascap uint64 * core/tests: fix compilation failure * eth/config: gascap at 25M + minor review concerns
-
由 Marius van der Wijden 提交于
* core: use uint64 for total tx costs instead of big.Int * core: added local tx pool test case * core, crypto: various allocation savings regarding tx handling * Update core/tx_list.go * core: added tx.GasPriceIntCmp for comparison without allocation adds a method to remove unneeded allocation in comparison to tx.gasPrice * core: handle pools full of locals better * core/tests: benchmark for tx_list * core/txlist, txpool: save a reheap operation, avoid some bigint allocs Co-authored-by: NMartin Holst Swende <martin@swende.se>
-
- 01 7月, 2020 3 次提交
-
-
由 Marius van der Wijden 提交于
List headers made up 11% of all allocations during sync. This change removes most of those allocations by keeping the list header values cached in the encoder buffer instead. Since encoder buffers are pooled, list headers are no longer allocated in the common case where an encoder buffer is available for reuse. Co-authored-by: NFelix Lange <fjl@twurst.com>
-
由 Adam Schmideg 提交于
This adds a regression test for the LES priority client API.
-
由 Marius van der Wijden 提交于
* eth/downloaded: fixed datarace between synchronize and Progress There was a race condition between `downloader.synchronize()` and `Progress` `syncWithPeer` `fetchHeight` `findAncestors` and `processHeaders` This PR changes the behavior of the downloader a bit. Previously the functions `Progress` `syncWithPeer` `fetchHeight` `findAncestors` and `processHeaders` read the syncMode anew within their loops. Now they read the syncMode at the start of their function and don't change it during their runtime. * eth/downloaded: comment * eth/downloader: added comment
-
- 30 6月, 2020 6 次提交
-
-
由 rene 提交于
-
由 Guillaume Ballet 提交于
-
由 Marius van der Wijden 提交于
* core, crypto: various allocation savings regarding tx handling * core: reduce allocs for gas price comparison This change reduces the allocations needed for comparing different transactions to each other. A call to `tx.GasPrice()` copies the gas price as it has to be safe against modifications and also needs to be threadsafe. For comparing and ordering different transactions we don't need these guarantees * core: added tx.GasPriceIntCmp for comparison without allocation adds a method to remove unneeded allocation in comparison to tx.gasPrice * core/types: pool legacykeccak256 objects in rlpHash rlpHash is by far the most used function in core that allocates a legacyKeccak256 object on each call. Since it is so widely used it makes sense to add pooling here so we relieve the GC. On my machine these changes result in > 100 MILLION less allocations and > 30 GB less allocated memory. * reverted some changes * reverted some changes * trie: use crypto.KeccakState instead of replicating code Co-authored-by: NMartin Holst Swende <martin@swende.se>
-
由 Martin Holst Swende 提交于
This PR implements the EVM state transition tool, which is intended to be the replacement for our retesteth client implementation. Documentation is present in the cmd/evm/README.md file. Co-authored-by: NFelix Lange <fjl@twurst.com>
-
由 Binacs 提交于
* [cmd] Abstract `getPassPhrase` functions into one. * cmd/ethkey: fix compilation failure Co-authored-by: Nrjl493456442 <garyrong0905@gmail.com>
-
由 meowsbits 提交于
Without use of global, these flags didn't actually modify miner configuration, since we weren't grabbing from the proper context scope, which should be global (vs. subcommand). Signed-off-by: Nmeows <b5c6@protonmail.com>
-
- 26 6月, 2020 1 次提交
-
-
由 Marius van der Wijden 提交于
* eth: returned revert reason in traceTx * eth: return result data
-
- 25 6月, 2020 3 次提交
-
-
由 meowsbits 提交于
The import command should not return a 0 status code if the import finishes prematurely becaues of an import error. Returning the error causes the program to exit with 1 if the err is non nil. Signed-off-by: Nmeows <b5c6@protonmail.com>
-
由 Marius van der Wijden 提交于
* core/vm: fix incorrect computation of discount During testing on Yolov1 we found that the way geth calculates the discount is not in line with the specification. Basically what we did is calculate 128 * Bls12381GXMulGas * discount / 1000 whenever we received more than 128 pairs of values. Correct would be to calculate k * Bls12381... for k > 128. * core/vm: better logic for discount calculation * core/vm: better calculation logic, added worstcase benchmarks * core/vm: better benchmarking logic
-
由 Marius van der Wijden 提交于
-
- 24 6月, 2020 5 次提交
-
-
由 gary rong 提交于
* eth: don't block if transaction broadcast loop is returned * eth: kick out peer if we failed to send message * eth: address comment
-
由 Felix Lange 提交于
* crypto/secp256k1: enable use of __int128 This speeds up scalar & field calculations a lot. * crypto/secp256k1: enable endomorphism optimization
-
由 Felix Lange 提交于
These commands mirror the key/URL generation functions of cmd/bootnode. $ devp2p key generate mynode.key $ devp2p key to-enode mynode.key -ip 203.0.113.21 -tcp 30304 enode://78a7746089baf4b8615f54a5f0b67b22b1...
-
由 Péter Szilágyi 提交于
p2p: measure packet throughput too, not just bandwidth
-
由 Péter Szilágyi 提交于
-
- 23 6月, 2020 1 次提交
-
-
由 ucwong 提交于
-