Commit graph

438 commits

Author SHA1 Message Date
parmarrushabh
3e5f4d54a8 Hot_Fix Bad block Error 2019-04-25 12:11:30 +05:30
Martin Holst Swende
af401d03a3
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-08 12:00:42 +03:00
AnilChinchawale
41ba2c6b33 m1_equal_m2 2019-03-25 11:45:14 +05:30
AnilChinchawale
22732d57fb Minor Changes added 2019-03-12 15:57:12 +05:30
AnilChinchawale
d5101dc3ed Condition added self.config.XDPoS != nil 2019-01-31 04:51:28 +05:30
parmarrushabh
7833a10c16 remove run evm with signing tracsaction 2018-12-28 12:33:35 +05:30
parmarrushabh
315c400748 Fixed hard code 3 mns address only for testnet. 2018-12-14 11:17:44 +05:30
AnilChinchawale
7ef8da4fee refactoring code 2018-12-07 10:49:42 +05:30
AnilChinchawale
4a6e8c7f5d Won't grasp txs at checkpoint 2018-12-07 10:42:40 +05:30
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
parmarrushabh
95041650e8 reduce number sign transaction 2018-12-04 10:24:07 +05:30
AnilChinchawale
6d3bcd918f fix nil exception 2018-12-04 14:29:07 +05:30
parmarrushabh
2b7010d51f add state variable to verifyHeader(), verifyHeaders() in the consensus 2018-12-02 12:21:48 +05:30
AnilChinchawale
549b08d953 rollback fix duplicate count reward 2018-11-27 10:15:34 +05:30
MestryOmkar
b0cfa3037f fixed error 2018-11-24 17:55:15 +05:30
parmarrushabh
8d7572ef1c hot fix 2018-11-22 15:49:29 +05:30
AnilChinchawale
428d3e2f9c fix duplicate hook rewards with --announceTxs 2018-11-22 12:43:16 +05:30
Rahulraj04
bd61027260 extend timeout at checkpoint to 2 mins 2018-11-17 18:32:52 +05:30
Rahulraj04
6c67be797b update logging 2018-11-17 16:37:14 +05:30
parmarrushabh
5501a5707c fixed 2018-11-17 16:15:25 +05:30
parmarrushabh
f5e8c999a2 set block difficulty belong to creator turn 2018-11-17 12:52:10 +05:30
AnilChinchawale
e2e75095ea remove caculate uncle block XDPoS 2018-11-17 12:16:20 +05:30
AnilChinchawale
6ad335097c remove faster tx invalid nonce 2018-11-17 12:10:37 +05:30
parmarrushabh
9f36d37558 Parallel process block from fetcher 2018-11-17 12:02:43 +05:30
parmarrushabh
abd494055b fix err download block on masternode 2018-11-14 11:29:48 +05:30
AnilChinchawale
146e73a6e9 Fixed wait period longer in when near checkpoit block for all MNs. 2018-11-14 17:58:21 +05:30
parmarrushabh
8562d53da0 Fixed delay longer than 10 seconds when near at block checkpoint. 2018-11-12 16:54:06 +05:30
parmarrushabh
2a4d8db5da fix gas limit for block equal param 2018-11-12 13:10:40 +05:30
parmarrushabh
f586154a8e fix error transaction underpriced when add sign tx to pool(full) 2018-11-12 13:08:55 +05:30
AnilChinchawale
1eda4b653c stop node when updateM1 fails 2018-11-12 12:51:18 +05:30
AnilChinchwale
5ebc19f70a fix error deadlocked master node 2018-11-09 17:17:50 +05:30
parmarrushabh
f0761106f4 m1 mine block but only broadcast block wait m2 validate 2018-11-09 16:01:01 +05:30
parmarrushabh
7ebdbeed64 fix after reviewing 2018-11-09 13:07:34 +05:30
parmarrushabh
9d6344fbb4 Broadcast special Tx through pairRW 2018-11-09 12:45:18 +05:30
gary rong
e2640a96d4 miner: fix miner stress test (#18039) 2018-11-07 10:55:56 +02:00
AnilChinchawale
deb79f4a23 push Randomization implementation 2018-11-06 17:27:13 +05:30
parmarrushabh
944494f6e4 Revert Randomization implementation 2018-11-06 16:16:29 +05:30
MestryOmkar
c9ad5cedb2 minor fix for chainHeadCh 2018-11-05 14:47:35 +05:30
AnilChinchawale
d81dc08a50 Get randomize m2 offer from validators in smart contract. 2018-11-05 11:12:22 +05:30
AnilChinchawale
a8c2a15886 adjust timeout for m1 2018-11-05 17:29:35 +05:30
AnilChinchawale
7e7bc37c20 convert update M1 method from async to sync 2018-11-02 12:14:43 +05:30
parmarrushabh
ce89b6b92d making XDPoS as a separate package 2018-10-28 11:58:50 +05:30
AnilChinchwale
7a7abd4f75 directly set mns to snapshot 2018-10-28 10:40:26 +05:30
parmmarrushabh
bdf9dd8802 extend timeout to 10s 2018-10-25 15:17:41 +05:30
MestryOmkar
cd3f0e37b4 move gap into genesis config 2018-10-24 14:29:03 +05:30
MestryOmkar
7adecc32d3 node waits to his turn until there is a new block comes in 2018-10-22 10:37:12 +05:30
AnilChinchawale
f319f5c1df in case a masternode resigns, let him continue until end of the current epoch 2018-10-14 15:08:02 +05:30
MestryOmkar
f814908442 get masternodes set from latest checkpoint block header instead of fr… … 2018-10-10 14:15:15 +05:30
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
parmarrushabh
9f5cba7dc7 update new set of masternodes at end of each epoch (distance = m1Gap) 2018-09-30 12:00:33 +05:30
Liang ZOU
6663e5da10 all: fix various comment typos (#17748) 2018-09-25 12:26:35 +02:00
parmarrushabh
76153eea4a Fixed bug calculate reward and add unit test for it. 2018-09-22 10:12:05 +05:30
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
AnilChinchawale
4e3cb79ff2 Refine code using log error when create tx sign. 2018-09-02 17:32:33 +05:30
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
MestryOmkar
f0b6c70a8e Refine code and fixed send tx sign for block signer. 2018-08-28 16:07:53 +05:30
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
AnilChinchawale
1e59069d3a reuse Clique voting strategy for now, leave header.Coinbase empty 2018-07-12 16:24:50 +05:30
AnilChinchawale
2fb2d7404d block 1 - all masternodes race to create 2018-07-10 16:20:55 +05:30
AnilChinchawale
2a878bb7a7 golint fix 2018-07-07 16:14:53 +05:30
AnilChinchawale
91aa7c65ef masternode takes turn (circle) to propose block 2018-07-07 16:11:13 +05:30
AnilChinchawale
5f79d00d04 FIX UNITTESTS 2018-06-30 15:07:40 +05:30
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
terasum
e9382c6e9f miner: fix typo 2017-10-12 10:19:23 +08:00
Mark
cb5235eb07 miner: make starting of CPU agent more reliable (#15148) 2017-09-19 13:28:15 +02:00
Péter Szilágyi
10b3f97c9d core: only fire one chain head per batch (#15123)
* core: only fire one chain head per batch

* miner: announce chan events synchronously
2017-09-11 13:13:05 +03:00
Felix Lange
10181b57a9 core, eth/downloader: commit block data using batches (#15115)
* ethdb: add Putter interface and Has method

* ethdb: improve docs and add IdealBatchSize

* ethdb: remove memory batch lock

Batches are not safe for concurrent use.

* core: use ethdb.Putter for Write* functions

This covers the easy cases.

* core/state: simplify StateSync

* trie: optimize local node check

* ethdb: add ValueSize to Batch

* core: optimize HasHeader check

This avoids one random database read get the block number. For many uses
of HasHeader, the expectation is that it's actually there. Using Has
avoids a load + decode of the value.

* core: write fast sync block data in batches

Collect writes into batches up to the ideal size instead of issuing many
small, concurrent writes.

* eth/downloader: commit larger state batches

Collect nodes into a batch up to the ideal size instead of committing
whenever a node is received.

* core: optimize HasBlock check

This avoids a random database read to get the number.

* core: use numberCache in HasHeader

numberCache has higher capacity, increasing the odds of finding the
header without a database lookup.

* core: write imported block data using a batch

Restore batch writes of state and add blocks, tx entries, receipts to
the same batch. The change also simplifies the miner.

This commit also removes posting of logs when a forked block is imported.

* core: fix DB write error handling

* ethdb: use RLock for Has

* core: fix HasBlock comment
2017-09-09 19:03:07 +03:00
Mark
c1740e4540 core/types, miner: avoid tx sender miscaching (#14773) 2017-09-07 23:22:27 +02:00
Zsolt Felfoldi
4ea4d2dc34
core, eth: add bloombit indexer, filter based on it 2017-09-06 11:13:13 +03:00