aboutsummaryrefslogtreecommitdiffstats
path: root/core/chain_manager.go
Commit message (Collapse)AuthorAgeFilesLines
* core: disable cash tmpobscuren2015-05-191-3/+5
|
* core: chain manager no longer exports genesis blockobscuren2015-05-191-2/+2
|
* core: parallelise nonce checking when processing blocksobscuren2015-05-181-6/+83
| | | | | | ChainManager now uses a parallel approach to block processing where all nonces are checked seperatly from the block processing process. This speeds up the process by about 3 times on my i7
* core: global chain insert lockobscuren2015-05-171-44/+43
|
* core, miner: fork resolving and restart miner after sync opobscuren2015-05-161-7/+15
| | | | Fork resolving fixes #940
* core: fixed mining strategyobscuren2015-05-151-9/+15
|
* core: changed how head events are checkedobscuren2015-05-151-2/+2
|
* core: changed log message for forks. closes #952obscuren2015-05-141-11/+13
|
* solidity compiler and contract metadocs integrationzelig2015-05-071-3/+2
| | | | | | | | | | | | | * common/compiler: solidity compiler + tests * rpc: eth_compilers, eth_compileSolidity + tests * fix natspec test using keystore API, notice exp dynamically changes addr, cleanup * resolver implements registrars and needs to create reg contract (temp) * xeth: solidity compiler. expose getter Solc() and paths setter SetSolc(solcPath) * ethereumApi: implement compiler related RPC calls using XEth - json struct tests * admin: make use of XEth.SetSolc to allow runtime setting of compiler paths * cli: command line flags solc to set custom solc bin path * js admin api with new features debug and contractInfo modules * wiki is the doc https://github.com/ethereum/go-ethereum/wiki/Contracts-and-Transactions
* Add genesis block total difficulty in testsGustav Simonsson2015-05-071-0/+1
|
* core: added unix timestamp to debug output for block procobscuren2015-05-041-1/+1
|
* core: print ignored blocksobscuren2015-05-031-1/+1
|
* eth,core: changed NewTicker to Tickobscuren2015-05-031-2/+2
|
* core: added 'ignored' statusobscuren2015-05-011-2/+3
|
* core: added a wait group to chain manager for graceful shutdownobscuren2015-04-301-0/+8
|
* core: check for parent in calc TD. TD = (N != 0 == parent.TD) || (== D)obscuren2015-04-301-0/+4
|
* core, eth: verify td of received blocksobscuren2015-04-301-2/+4
|
* core: added some additional chain tests for shortest chainobscuren2015-04-301-1/+1
|
* core: return the index of the block that failed when inserting a chainobscuren2015-04-291-3/+5
|
* core: fixed chain reorg during splitsobscuren2015-04-291-26/+32
| | | | | | | | | | | | | | Chain reorgs weren't properly handled when a chain was further ahead. Previously we'd end up with mixed chains in our canonical numbering sequence. Added test for this type of forking. ``` /-o-o-o A o-C-+ \-o-o-o-o B ``` Ends up with with C A1, A2, A3, B4
* core: seperated proccing mutex and getting mutexobscuren2015-04-291-41/+47
|
* core: moved mutex locks in insert blocks to start of functionobscuren2015-04-291-41/+40
| | | | | Insert blocks will no longer allow processing of multiple chains at the same time. The block lock has been moved to start of the function.
* core: set min gas price at startupobscuren2015-04-291-10/+10
|
* core, miner: added value check on tx validationobscuren2015-04-261-7/+3
| | | | | | * Changed CalcGasLimit to no longer need current block * Added a gas * price + value on tx validation * Transactions in the pool are now re-validated once every X
* xeth, core, cmd/utils: Transaction can not be over block gas limitobscuren2015-04-241-11/+18
| | | | Transactions will be invalidated when the tx.gas_limit > block.gas_limit
* Moved leveldb update loop to eth/backendBas van Kervel2015-04-231-5/+5
| | | | | | change order of block insert and update LastBlock bugfix, wrong hash stored in blockDb
* core: set the state for the managed tx stateobscuren2015-04-231-1/+1
| | | | | Set the state for the managed tx state instead of creating a new managed state.
* core: shuffled some codeobscuren2015-04-211-7/+13
|
* core: force block process & fixed chain manager testobscuren2015-04-201-1/+6
|
* core: added chain reset mechanism on bad blocksobscuren2015-04-201-12/+23
|
* core: added chain head reset to known blockobscuren2015-04-201-0/+24
|
* core: moved TD calculation from proc to chainobscuren2015-04-201-5/+6
|
* cleanupobscuren2015-04-191-3/+2
|
* core: merge using equal block numbers rather than the current blockobscuren2015-04-191-1/+7
|
* core: changed split detection to also account for number less thanobscuren2015-04-161-1/+2
|
* core: during split properly insert parent blocksobscuren2015-04-141-1/+32
| | | | | | | During a split parent and grand parent were included in the database but not in the canonical chain (numbered chain). Added a `merge` function which finds the common ancestor of the chains and reinserts the missing blocks.
* Merge pull request #702 from ethersphere/frontier/blockpoolJeffrey Wilcke2015-04-131-0/+1
|\ | | | | blockpool stability fixes:
| * blockpool stability fixes:zelig2015-04-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | - follow up locks and fix them - chainManager: call SetQueued for parentErr future blocks, uncomment TD checks, unskip test - make ErrIncorrectTD non-fatal to be forgiving to genuine mistaken nodes (temp) but demote them to guard against stuck best peers. - add purging to bounded nodeCache (config nodeCacheSize) - use nodeCache when creating blockpool entries and let non-best peers add blocks (performance boost) - minor error in addError - reduce idleBestPeerTimeout to 1 minute - correct status counts and unskip status passing status test - glogified logging
* | Added blockchain DB versioning support, closes #650Bas van Kervel2015-04-131-2/+5
|/
* Merge branch 'frontier/blockpool' of ↵obscuren2015-04-091-0/+1
|\ | | | | | | https://github.com/ethersphere/go-ethereum into ethersphere-frontier/blockpool
| * future queued block supportzelig2015-04-091-0/+1
| | | | | | | | | | | | | | - queued bool // flag for blockpool to skip TD check - set to true when future block queued - in checkTD: skip check if queued - TODO: add test (insertchain sets future block)
* | Added default registrarobscuren2015-04-091-9/+1
|/
* Updated loggingobscuren2015-04-071-5/+5
|
* Block header changed & console miner controlobscuren2015-04-061-1/+1
| | | | | | * miner control moved to `admin.miner` * miner option to set extra data * block extra now bytes
* time lapseobscuren2015-04-051-1/+3
|
* Updated loggingobscuren2015-04-051-8/+18
|
* Added thread safe eachobscuren2015-04-051-4/+4
|
* Removed debuggingobscuren2015-04-051-7/+0
|
* prevent deadlockobscuren2015-04-051-13/+6
|
* Improved chain manager, improved block processor, fixed testsobscuren2015-04-041-5/+40
| | | | | | * ChainManager allows cached future blocks for later processing * BlockProcessor allows a 4 second window on future blocks * Fixed tests
* Changed log to new loggingobscuren2015-04-041-5/+9
|
* check for nil block (tmp).obscuren2015-04-041-0/+3
| | | | @zelig this needs to be addressed in the block pool.
* basic glogobscuren2015-04-041-0/+10
|
* do not include BlockEqualTS as valid unclesobscuren2015-04-031-1/+2
|
* Read most protocol params from common/params.jsonGustav Simonsson2015-04-021-8/+6
| | | | | | | | | * Add params package with exported variables generated from github.com/ethereum/common/blob/master/params.json * Use params package variables in applicable places * Add check for minimum gas limit in validation of block's gas limit * Remove common/params.json from go-ethereum to avoid outdated version of it
* fixed testsobscuren2015-03-241-1/+1
|
* Copy fixobscuren2015-03-241-1/+1
|
* better block propagationobscuren2015-03-241-2/+2
|
* moved state and vm to coreobscuren2015-03-231-1/+1
|
* moved to errorobscuren2015-03-231-9/+2
|
* Merge branch 'develop' of github.com-obscure:ethereum/go-ethereum into developobscuren2015-03-231-2/+4
|\
| * Correct difficulty calculation to use new difficulty minimumGustav Simonsson2015-03-231-2/+4
| |
* | logging for possible unclesobscuren2015-03-231-0/+5
| |
* | added some nil checks for cache (testing specific)obscuren2015-03-231-6/+19
|/
* Added caching for block chain. Currently set to 10kobscuren2015-03-201-1/+19
|
* :-)obscuren2015-03-201-1/+0
|
* mergeobscuren2015-03-191-9/+7
|\
| * re-enabled json loggingobscuren2015-03-191-2/+0
| |
| * fixed chain event. Closes #529obscuren2015-03-191-5/+5
| |
* | Merge branch 'conversion' of github.com-obscure:ethereum/go-ethereum into ↵obscuren2015-03-181-15/+12
|\ \ | | | | | | | | | conversion
| * | core: use package rlp to encode blocksFelix Lange2015-03-181-15/+12
| | | | | | | | | | | | | | | This also changes the chain export format so there is no enclosing list around the blocks, which enables streaming export.
* | | prep template for fixed size hashesobscuren2015-03-181-2/+2
|/ /
* / converted chain managerobscuren2015-03-171-21/+27
|/
* Moved ethutil => commonobscuren2015-03-161-18/+18
|
* typoobscuren2015-03-141-1/+1
|
* Improved errors. Closes #475obscuren2015-03-141-2/+2
|
* GetBlockByNumber now properly looks for a number in the databaseobscuren2015-03-141-28/+33
|
* Return proper errorobscuren2015-03-141-0/+2
|
* Implemented a manage state for keeping track of noncesobscuren2015-03-131-5/+6
|
* Increased genesis gas & gas floor limit to 3141592obscuren2015-03-131-3/+1
|
* fallbackobscuren2015-03-111-0/+2
|
* mergeobscuren2015-03-081-8/+6
|\
| * Added eth.chain.new_headTaylor Gerring2015-03-061-2/+9
| |
* | Separated block db from state db. Partial fix for #416obscuren2015-03-071-15/+16
| |
* | Queued approach to delivering chain eventsobscuren2015-03-061-34/+73
| |
* | debug comments & pow handlingobscuren2015-03-061-5/+0
| |
* | Merge pull request #426 from Gustav-Simonsson/add_blockchain_testsJeffrey Wilcke2015-03-061-0/+15
|\ \ | | | | | | Add initial implementation of block tests
| * | Add initial implementation of block testsGustav Simonsson2015-03-051-0/+15
| | | | | | | | | | | | | | | | | | | | | * Add blocktest cmd and support for block tests files in tests/BlockTests , the launched node does not connect to network, resets state with a genesis block from the test file and starts the RPC API
* | | Miner fixes and updates (including miner)obscuren2015-03-051-9/+19
|/ /
* | uncle validationobscuren2015-03-041-6/+6
| |
* | Changed nonce to a uint64obscuren2015-03-041-1/+1
| |
* | Merge branch 'jsonlogs' of https://github.com/ethersphere/go-ethereum into ↵obscuren2015-03-041-3/+12
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | ethersphere-jsonlogs Conflicts: eth/block_pool.go eth/block_pool_test.go eth/protocol_test.go miner/worker.go
| * | add eth.chain.new_head log to core/chain_managerzelig2015-03-031-3/+12
| |/
* / New gas prices modelobscuren2015-03-021-4/+6
|/
* Merge branch 'master' into developobscuren2015-02-241-4/+26
|\
| * Properly uninstall filters. Mining issue fixed #closes #365obscuren2015-02-231-4/+26
| | | | | | | | | | | | * Added an additional tx state which is used to get the current nonce * Refresh transient state each time a new canonical block is found * Properly uninstall filters. Fixes a possible crash in RPC
* | removed logobscuren2015-02-241-1/+0
|/
* Minor updates for releaseobscuren2015-02-211-1/+2
|
* Fixed chain event issueobscuren2015-02-201-3/+1
|
* fixed mergeobscuren2015-02-201-6/+3
|\
* | dirty tracking for state objects fixedobscuren2015-02-201-1/+1
| |
* | Optimisations and fixed a couple of DDOS issues in the minerobscuren2015-02-201-5/+20
|/
* Added GetBlock GetUncle with OOB guardobscuren2015-02-181-8/+8
|
* Changed to ChainEvent and fixed a nil pointer in transactobscuren2015-02-181-2/+0
|
* Filter and mutex locks addedobscuren2015-02-171-1/+12
|
* Removed reference to lastBlockNumber & LastBlockNumberobscuren2015-02-161-21/+5
|
* Resolved some bugs in the minerobscuren2015-02-151-1/+1
| | | | | | * TODO nonce error sometimes persists * Fixed mining on wrong blocks * Fixed state error & receipt fail
* Reference pointer to block instead of pointer to functionobscuren2015-02-151-1/+1
|
* Basic structure minerobscuren2015-02-101-1/+10
|
* Filteringobscuren2015-02-051-2/+1
|
* changed lost keyobscuren2015-01-291-1/+7
|
* Fixed difficultyobscuren2015-01-181-5/+4
| | | | Difficulty was broken when refactored.
* Moved the TD method from block processor.obscuren2015-01-101-1/+15
|
* mem fixes for vm. Changed uncle inclusion testsobscuren2015-01-101-0/+22
|
* Merge remote-tracking branch 'upstream/develop' into developzelig2015-01-091-2/+2
|\
| * Minor fixed and additions for block procobscuren2015-01-081-2/+2
| | | | | | | | | | | | * Path check length * Genesis include TD * Output TD on last block
* | GetBlockHashesFromHash(hash, max) gives back max hashes starting from PARENT ↵zelig2015-01-091-3/+1
|/ | | | of hash
* Refactored ethutil.Config.Db outobscuren2015-01-071-16/+13
|
* Adjusted difficulty and skip get tx messagesobscuren2015-01-061-1/+1
|
* Changed prev_hash to block_hash, state transition now uses vm envobscuren2015-01-041-8/+8
| | | | | | | * PREVHASH => BLOCKHASH( N ) * State transition object uses VMEnv as it's query interface * Updated vm.Enviroment has GetHash( n ) for BLOCKHASH instruction * Added GetHash to xeth, core, utils & test environments
* Closure => Contextobscuren2015-01-021-20/+0
|
* Added a query interface for world stateobscuren2015-01-021-0/+9
|
* Set TD to block once processedobscuren2015-01-021-0/+1
|
* Delete current chain for resetobscuren2014-12-231-0/+4
|
* Chain importerobscuren2014-12-231-5/+0
|
* Refactored block & Transactionobscuren2014-12-231-59/+75
| | | | * Includes new rlp decoder
* Merge fixesobscuren2014-12-181-1/+4
|
* Merged developobscuren2014-12-181-37/+83
|\
| * Updated to new methodsobscuren2014-12-181-0/+7
| |
| * Locks, refactor, testsobscuren2014-12-181-37/+76
| | | | | | | | | | | | * Added additional chain tests * Added proper mutex' on chain * Removed ethereum dependencies
* | Merge branch 'develop' into poc8obscuren2014-12-181-1/+10
|\|
| * moved err checkobscuren2014-12-171-1/+10
| |
* | resolve merge conflict hellzelig2014-12-151-4/+0
| |
* | adapt chain_manager to eth protocol interfacezelig2014-12-151-0/+4
| | | | | | | | | | - add Status() to return td, currentblock hash, genesis hash - GetChainHashesFromHash -> GetBlockHashesFromHash
* | add Status to retrieve TD, currentBlock, genesis for easy interface with ↵zelig2014-12-151-1/+5
|/ | | | eth/protocol
* moved interfacesobscuren2014-12-111-0/+2
|
* states moved to chainobscuren2014-12-111-0/+13
|
* upped proto version and modified block poolobscuren2014-12-051-9/+15
|
* Only set TD if it's actually higherobscuren2014-12-041-1/+4
|
* Renamed `chain` => `core`obscuren2014-12-041-0/+276