gary rong
d4bb3798d8
miner: add generate and import unit test ( #20111 )
...
This PR adds a new unit test in miner package which will create some blocks from miner and then import into another chain. In this way, we can ensure all blocks generated by Geth miner obey consensus rules.
2019-10-20 12:36:40 +02:00
Rob Mulholand
3b6c9902f3
core: remove unused gas return in ApplyTransaction ( #20065 )
2019-09-12 22:22:22 +03:00
Felix Lange
54b271a86d
crypto: add SignatureLength constant and use it everywhere ( #19996 )
...
Original change by @jpeletier
2019-08-22 15:14:06 +02:00
Martin Holst Swende
3271a5afa0
miner: don't update pending state when no transactions are added ( #19734 )
...
* miner: don't update pending state when no transactions are added
* miner: avoid transaction processing when pending block is already full
2019-06-19 14:09:28 +03:00
Martin Holst Swende
4c90efdf57
consensus,core,miner: avoid overhead of creating a new block ( #19301 )
...
* consensus,core,miner: avoid overhead of creating a new block
* consensus: nitpick dot
* consensus: fix some comment formatting nits
2019-04-30 16:42:36 +03:00
gary rong
6269e5574c
miner: polish miner configuration ( #19480 )
...
* cmd, eth, miner: disable advance sealing if user require
* cmd, console, miner, les, eth: wrap the miner config
* eth: remove todo
* cmd, miner: revert noadvance flag
The reason for this is: if the transaction execution is even longer
than block time, then this kind of transactions is DoS attack.
2019-04-23 10:08:51 +03:00
Martin Holst Swende
0b4fe8d192
all: simplify timestamps to uint64 ( #19372 )
...
* all: simplify timestamps to uint64
* tests: update definitions
* clef, faucet, mobile: leftover uint64 fixups
* ethash: fix tests
* graphql: update schema for timestamp
* ethash: remove unused variable
2019-04-02 23:28:48 +03:00
Brent
7fb89697fd
core/types: add block location fields to receipt ( #17662 )
...
Solves #15210 without changing consensus, in a backwards compatible way,
by adding tx inclusion information to the Receipt struct.
2019-03-27 13:39:25 +01:00
Péter Szilágyi
054412e335
all: clean up and proerly abstract database access
2019-03-06 13:35:03 +02:00
Janoš Guljaš
26aea73673
cmd, node, p2p/simulations: fix node account manager leak ( #19004 )
...
* node: close AccountsManager in new Close method
* p2p/simulations, p2p/simulations/adapters: handle node close on shutdown
* node: move node ephemeralKeystore cleanup to stop method
* node: call Stop in Node.Close method
* cmd/geth: close node.Node created with makeFullNode in cli commands
* node: close Node instances in tests
* cmd/geth, node: minor code style fixes
* cmd, console, miner, mobile: proper node Close() termination
2019-02-07 12:40:36 +02:00
Martin Holst Swende
dc43ea8d03
tests: tune flaky tests that error in travis occasionally ( #18508 )
...
* tests: tune flaky tests that error in travis occasionally
* tests: formatting
2019-01-23 16:09:29 +01:00
Paweł Bylica
de39513ced
core, internal, eth, miner, les: Take VM config from BlockChain ( #17955 )
...
Until this commit, when sending an RPC request that called `NewEVM`, a blank `vm.Config`
would be taken so as to set some options, based on the default configuration. If some extra
configuration switches were passed to the blockchain, those would be ignored.
This PR adds a function to get the config from the blockchain, and this is what is now used
for RPC calls.
Some subsequent changes need to be made, see https://github.com/ethereum/go-ethereum/pull/17955#pullrequestreview-182237244
for the details of the discussion.
2018-12-06 14:34:49 +01:00
gary rong
e2640a96d4
miner: fix miner stress test ( #18039 )
2018-11-07 10:55:56 +02:00
Felix Lange
459278cd57
miner: remove intermediate conversion to int in tests ( #17853 )
...
This fixes the tests on 32bit platforms.
2018-10-08 16:30:00 +02:00
Liang ZOU
6663e5da10
all: fix various comment typos ( #17748 )
2018-09-25 12:26:35 +02:00
gary rong
457e930f27
eth, miner: prefer locally generated uncles vs remote ones ( #17715 )
...
* core, eth: fix dependency cycle
* eth, miner: perfer to locally generated uncle
2018-09-21 00:11:55 +03:00
gary rong
d6254f827b
all: protect self-mined block during reorg ( #17656 )
2018-09-20 15:09:30 +03:00
Péter Szilágyi
4bb25042eb
consensus/clique, core: chain maker clique + error tests
2018-09-11 16:40:00 +03:00
gary rong
f0242ee76d
miner: keep the timestamp for resubmitted mining block ( #17547 )
2018-08-29 17:31:59 +03:00
Péter Szilágyi
a4bc2c31e1
Merge pull request #17540 from karalabe/miner-uncle-fix
...
miner: track uncles more aggressively
2018-08-29 13:59:15 +03:00
Péter Szilágyi
f751c6ed47
miner: track uncles more aggressively
2018-08-29 13:29:59 +03:00
Péter Szilágyi
e8f229b82e
cmd, core, eth, miner, params: configurable gas floor and ceil
2018-08-29 12:40:12 +03:00
gary rong
c1c003e4ff
consensus, miner: stale block mining support ( #17506 )
...
* consensus, miner: stale block supporting
* consensus, miner: refactor seal signature
* cmd, consensus, eth: add miner noverify flag
* cmd, consensus, miner: polish
2018-08-28 16:59:05 +03:00
Péter Szilágyi
c134e00e48
Merge pull request #17494 from karalabe/mined-block-uncle-check
...
miner: differentiate between uncle and lost block
2018-08-23 16:03:10 +03:00
gary rong
40a71f28cf
miner: fix state commit, track old work packages too ( #17490 )
...
* miner: commit state which is relative with sealing result
* consensus, core, miner, mobile: introduce sealHash interface
* miner: evict pending task with threshold
* miner: go fmt
2018-08-23 16:02:57 +03:00
Péter Szilágyi
1136269a79
miner: differentiate between uncle and lost block
2018-08-23 15:44:27 +03:00
Péter Szilágyi
1e63a015a5
miner: add two stress tests based on clique and ethash
2018-08-23 14:09:45 +03:00
Péter Szilágyi
e0d0e64ce2
cmd, core, miner: add --txpool.locals and priority mining
2018-08-22 09:43:57 +03:00
gary rong
b2c644ffb5
cmd, eth, miner: make recommit configurable ( #17444 )
...
* cmd, eth, miner: make recommit configurable
* cmd, eth, les, miner: polish a bit
* miner: filter duplicate sealing work
* cmd: remove uncessary conversion
* miner: avoid microptimization in favor of cleaner code
2018-08-21 22:56:54 +03:00
gary rong
a063fe9b2d
miner: fix uncle iteration logic ( #17469 )
2018-08-21 17:33:04 +03:00
Péter Szilágyi
22cd3f70a6
miner: update mining log with correct fee calculation
2018-08-17 15:47:14 +03:00
Péter Szilágyi
62f5137a72
miner: add gas and fee details to mining logs
2018-08-16 14:49:00 +03:00
gary rong
54216811a0
miner: regenerate mining work every 3 seconds ( #17413 )
...
* miner: regenerate mining work every 3 seconds
* miner: polish
2018-08-16 14:14:33 +03:00
gary rong
040aa2bb10
miner: streaming uncle blocks ( #17320 )
...
* miner: stream uncle block
* miner: polish
2018-08-15 14:09:17 +03:00
gary rong
a1783d1697
miner: move agent logic to worker ( #17351 )
...
* miner: move agent logic to worker
* miner: polish
* core: persist block before reorg
2018-08-14 18:34:33 +03:00
gary rong
941018b570
miner: seperate state, receipts for different mining work ( #17323 )
2018-08-06 12:55:44 +03:00
gary rong
51db5975cc
consensus/ethash: move remote agent logic to ethash internal ( #15853 )
...
* consensus/ethash: start remote ggoroutine to handle remote mining
* consensus/ethash: expose remote miner api
* consensus/ethash: expose submitHashrate api
* miner, ethash: push empty block to sealer without waiting execution
* consensus, internal: add getHashrate API for ethash
* consensus: add three method for consensus interface
* miner: expose consensus engine running status to miner
* eth, miner: specify etherbase when miner created
* miner: commit new work when consensus engine is started
* consensus, miner: fix some logics
* all: delete useless interfaces
* consensus: polish a bit
2018-08-03 11:33:37 +03:00
ledgerwatch
2fbc454355
miner: fix state locking while writing to chain (issue #16933 ) ( #17173 )
2018-07-31 10:22:33 +03:00
Ralph Caraveo III
5d30be412b
all: switch out defunct set library to different one ( #16873 )
...
* keystore, ethash, eth, miner, rpc, whisperv6: tech debt with now defunct set.
* whisperv5: swap out gopkg.in/fatih/set.v0 with supported set
2018-07-16 10:54:19 +03:00
kiel barry
cbfb40b0aa
params: fix golint warnings ( #16853 )
...
params: fix golint warnings
2018-06-05 12:31:34 +02:00
Mark
0029a869f0
miner: not call commitNewWork if it's a side block ( #16751 )
2018-06-05 12:10:09 +02:00
Péter Szilágyi
49719e21bc
core, eth: minor txpool event cleanups
2018-05-18 12:08:24 +03:00
rjl493456442
a2e43d28d0
all: collate new transaction events together
2018-05-18 11:46:44 +03:00
Ryan Schneider
2a1fc3d155
miner: remove contention on currentMu for pending data retrievals ( #16497 )
2018-04-16 10:56:20 +03:00
stompesi
fe6cf00f48
miner: remove duplicated code ( #15968 )
2018-03-16 14:13:52 +02:00
Péter Szilágyi
55599ee95d
core, trie: intermediate mempool between trie and database ( #15857 )
...
This commit reduces database I/O by not writing every state trie to disk.
2018-02-05 17:40:32 +01:00
Jim McDonald
18a7d31338
miner: avoid unnecessary work ( #15883 )
2018-01-15 12:57:06 +02:00
Péter Szilágyi
6f69cdd109
all: switch gas limits from big.Int to uint64
2018-01-03 14:45:35 +02:00
Ricardo Domingos
9ff9d04a69
all: fix code comment typos ( #15547 )
...
* console: fix typo in comment
* contracts/release: fix typo in comment
* core: fix typo in comment
* eth: fix typo in comment
* miner: fix typo in comment
2017-11-24 11:20:01 +02:00
Péter Szilágyi
6d6a5a9337
cmd, consensus, core, miner: instatx clique for --dev ( #15323 )
...
* cmd, consensus, core, miner: instatx clique for --dev
* cmd, consensus, clique: support configurable --dev block times
* cmd, core: allow --dev to use persistent storage too
2017-10-24 13:40:42 +03:00