aboutsummaryrefslogtreecommitdiffstats
path: root/core/blockchain.go
Commit message (Collapse)AuthorAgeFilesLines
* eth/filters: ✨ pending logs ✨Jeffrey Wilcke2016-02-131-1/+1
| | | | | | Pending logs are now filterable through the Go API. Filter API changed such that each filter type has it's own bucket and adding filter explicitly requires you specify the bucket to put it in.
* core, eth/downloader: ensure state presence in ancestor lookupPéter Szilágyi2016-01-041-0/+13
|
* core: write individual transactions and receipts too on fast syncPéter Szilágyi2015-12-041-0/+12
|
* core: added a new RemovedLogEventJeffrey Wilcke2015-12-011-2/+20
| | | | | | When a chain reorganisation occurs we collect the logs that were deleted during the chain reorganisation. The removed logs are posted to the event mux indicating that those were deleted during the reorg.
* cmd, common, core, eth, node, rpc, tests, whisper, xeth: use protocol stacksPéter Szilágyi2015-11-271-5/+1
|
* core, eth, miner, xeth: clean up tx/receipt db accessorsPéter Szilágyi2015-11-191-6/+6
|
* core, eth, rpc: split out block validator and state processorJeffrey Wilcke2015-11-181-20/+114
| | | | | | | | | | | | This removes the burden on a single object to take care of all validation and state processing. Now instead the validation is done by the `core.BlockValidator` (`types.Validator`) that takes care of both header and uncle validation through the `ValidateBlock` method and state validation through the `ValidateState` method. The state processing is done by a new object `core.StateProcessor` (`types.Processor`) and accepts a new state as input and uses that to process the given block's transactions (and uncles for rewords) to calculate the state root for the next block (P_n + 1).
* core: only reset head header/fastblock if stalePéter Szilágyi2015-10-281-11/+18
|
* core, eth, trie: fix data races and merge/review issuesPéter Szilágyi2015-10-211-29/+42
|
* core, eth: roll back uncertain headers in failed fast syncsPéter Szilágyi2015-10-191-1/+36
|
* eth/downloader: concurrent receipt and state processingPéter Szilágyi2015-10-191-86/+180
|
* core, eth, trie: direct state trie synchronizationPéter Szilágyi2015-10-191-4/+21
|
* core, eth: receipt chain reconstructionPéter Szilágyi2015-10-191-40/+170
|
* core: fix block canonical mark / content write racePéter Szilágyi2015-10-191-20/+11
|
* core: support inserting pure header chainsPéter Szilágyi2015-10-191-65/+233
|
* Merge pull request #1899 from obscuren/mipmap-bloomJeffrey Wilcke2015-10-171-5/+22
|\ | | | | core, eth/filters, miner, xeth: Optimised log filtering
| * core, eth/filters, miner, xeth: Optimised log filteringJeffrey Wilcke2015-10-171-5/+22
| | | | | | | | | | | | | | Log filtering is now using a MIPmap like approach where addresses of logs are added to a mapped bloom bin. The current levels for the MIP are in ranges of 1.000.000, 500.000, 100.000, 50.000, 1.000. Logs are therefor filtered in batches of 1.000.
* | core/state, core, miner: handle missing root error from state.NewGustav Simonsson2015-10-161-1/+1
|/
* core, eth, event, miner, xeth: fix event post / subscription racePéter Szilágyi2015-10-121-38/+27
|
* core: fixed head write on block insertionJeffrey Wilcke2015-10-051-0/+3
| | | | | Due to a rebase this probably got overlooked / ignored. This fixes the issue of a block insertion never writing the last block.
* cmd/geth, cmd/utils, core, rpc: renamed to blockchainJeffrey Wilcke2015-10-041-0/+809
* Renamed ChainManager to BlockChain * Checkpointing is no longer required and never really properly worked when the state was corrupted.