Commit Graph

2442 Commits

Author SHA1 Message Date
zelig
5a9952c7b4 major blockpool change
- the spec says response to getBlockHashes(from, max) should return all hashes starting from PARENT of from. This required major changes and results in much hackier code.
- Introduced a first round block request after peer introduces with current head, so that hashes can be linked to the head
- peerInfo records currentBlockHash, currentBlock, parentHash and headSection
- AddBlockHashes checks header section and creates the top node from the peerInfo of the best peer
- AddBlock checks peerInfo and updates the block there rather than in a node
- request further hashes once a section is created but then no more until the root block is found (so that we know when to stop asking)
- in processSection, when root node is checked and receives a block, we need to check if the section has a parent known to blockchain or blockPool
- when peers are switched, new peer launches a new requestHeadSection loop or activates its actual head section, i.e., the section for it currentBlockHash
- all tests pass
2015-01-09 06:03:45 +00:00
zelig
8ecc9509b3 add ErrInsufficientChainInfo error 2015-01-09 06:03:32 +00:00
zelig
f72cb28b0f adapt unit tests to spec
- AddBlockHashes ignores the first hash (just used to match getBlockHashes query) sends the rest as blocksMsg
- new test TestPeerWithKnownParentBlock
- new test TestChainConnectingWithParentHash
- adapt all other tests to the new scheme
2015-01-09 05:57:09 +00:00
zelig
43ed0ed1ae no need to call AddBlockHashes when receiving new block 2015-01-09 05:06:04 +00:00
zelig
69dfca2feb minor changes in integration tests 2015-01-09 05:04:32 +00:00
zelig
3bdf28c1fe GetBlockHashesFromHash(hash, max) gives back max hashes starting from PARENT of hash 2015-01-09 05:03:26 +00:00
obscuren
db4aaedcbd Moved ptrie => trie. Removed old trie 2015-01-08 11:47:04 +01:00
obscuren
982c812e81 Read directly from stdin 2015-01-07 13:38:28 +01:00
obscuren
c1908c7d91 Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into develop 2015-01-07 13:22:29 +01:00
Jeffrey Wilcke
59c5a2f519 Merge pull request #244 from fjl/license-tool
Generated License Headers
2015-01-07 13:22:22 +01:00
Felix Lange
1d05027ba2 a few fixes for the license tool 2015-01-07 13:17:50 +01:00
obscuren
fed3e6a808 Refactored ethutil.Config.Db out 2015-01-07 13:17:48 +01:00
Felix Lange
ec7cb9981c add license tool and initial mailmap 2015-01-07 12:56:46 +01:00
obscuren
032ab66529 Added version flag 2015-01-07 01:21:55 +01:00
obscuren
60d9611c23 Fixed tests where txs weren't properly removed 2015-01-07 01:21:45 +01:00
obscuren
f0ec751237 Updated tests 2015-01-06 20:22:31 +01:00
obscuren
25e6c4eff8 Adjusted difficulty and skip get tx messages 2015-01-06 14:02:47 +01:00
obscuren
a76b7dadae Don't auto push jeff ... 2015-01-06 13:39:01 +01:00
obscuren
1b903767e0 Fixed port num 2015-01-06 13:31:52 +01:00
obscuren
4e7f53adf0 Changed to poc-8 & removed GetTxs 2015-01-06 13:31:08 +01:00
obscuren
564f02aa2b Fixed tests 2015-01-06 13:18:09 +01:00
Jeffrey Wilcke
3b8725e0f5 Merge pull request #239 from fjl/grab-bag
Grab bag of fixes
2015-01-06 13:13:16 +01:00
Felix Lange
3caa4ad1ba p2p: improve test for peers message
The test now checks that the number of of addresses is correct
and terminates cleanly.
2015-01-06 12:23:38 +01:00
Felix Lange
b0ff946b55 p2p: move peerList back into baseProtocol
It had been moved to Peer, probably for debugging.
2015-01-06 12:23:38 +01:00
Felix Lange
eb0e7b1b81 eth, p2p: remove EncodeMsg from p2p.MsgWriter
...and make it a top-level function instead.

The original idea behind having EncodeMsg in the interface was that
implementations might be able to encode RLP data to their underlying
writer directly instead of buffering the encoded data. The encoder
will buffer anyway, so that doesn't matter anymore.

Given the recent problems with EncodeMsg (copy-pasted implementation
bug) I'd rather implement once, correctly.
2015-01-06 12:23:38 +01:00
Felix Lange
36e1e5f151 cmd/peerserver: add some command line switches 2015-01-06 12:23:37 +01:00
Felix Lange
4c8c115a76 cmd/peerserver: use NoDial, don't use seed peers 2015-01-06 12:23:37 +01:00
Felix Lange
545e14691b cmd/peerserver: fix for new client identity type 2015-01-06 12:23:37 +01:00
Felix Lange
be97785856 cmd/evm: add dummy implementation for GetHash
Fixes the build. AFAIK evm does not bother keeping a chain and
cannot provide a real implementation.
2015-01-06 12:23:37 +01:00
Felix Lange
fde0ddb324 cmd/rlpdump: remove stray return 2015-01-06 12:23:36 +01:00
obscuren
117f66e823 Added license headers 2015-01-06 12:13:57 +01:00
obscuren
a26aecdfdb Updated WS API. Fixes #219. Closes #220 2015-01-06 11:44:22 +01:00
obscuren
47e6b2cef8 Allow extra to be set for mined blocks 2015-01-06 00:19:07 +01:00
obscuren
cc7f8f58e8 Limit block extra to 1024 2015-01-06 00:17:05 +01:00
obscuren
c9985bf563 Fixed peer window. Minor tweaks and fixes 2015-01-05 19:53:53 +01:00
Jeffrey Wilcke
22c0c5465a Merge pull request #235 from fjl/rlpdump
fixes for rlpdump
2015-01-05 17:48:04 +01:00
Jeffrey Wilcke
2cfbf76db8 Merge pull request #233 from fjl/rlpdump
cmd/rlpdump: new helper command
2015-01-05 17:42:52 +01:00
Felix Lange
ec4dee0fcd cmd/rlpdump: remove extra buffer 2015-01-05 17:42:20 +01:00
obscuren
952287db29 Updated tests 2015-01-05 17:40:23 +01:00
obscuren
b99b2c446c Precompiled contract & Depth change
* Added pre-compiled contract 0x04 (mem cpy)
* Changed depth error to return the gas instead of consuming
2015-01-05 17:39:42 +01:00
Felix Lange
04c0f7e15c cmd/rlpdump: add license header and synopsis 2015-01-05 17:38:39 +01:00
obscuren
d001479a47 unclean shutdown for now 2015-01-05 17:15:25 +01:00
obscuren
f16810c48e added shh back in 2015-01-05 17:12:52 +01:00
obscuren
66b05433b6 Merge branch 'ethersphere-eth.blockpool' into poc8 2015-01-05 17:12:19 +01:00
obscuren
6abf8ef78f Merge 2015-01-05 17:10:42 +01:00
Felix Lange
b907a5d765 cmd/rlpdump: new helper command 2015-01-05 13:45:38 +01:00
obscuren
b0854fbff5 BlockManager => BlockProcessor 2015-01-05 11:22:02 +01:00
obscuren
c1dee15144 BlockManager => BlockProcessor 2015-01-05 00:18:44 +01:00
obscuren
987119cd4a Merge branch 'poc8' into docbranch 2015-01-04 14:39:15 +01:00
obscuren
08b03afa4b Version bump 2015-01-04 14:34:04 +01:00