Gustav Simonsson
ec6a548ee3
all: Add GPU mining, disabled by default
9 years ago
Jeffrey Wilcke
7c7692933c
cmd/geth, cmd/utils, core, rpc: renamed to blockchain
...
* Renamed ChainManager to BlockChain
* Checkpointing is no longer required and never really properly worked
when the state was corrupted.
9 years ago
Felix Lange
a2d5a60418
core, core/state: batch-based state sync
9 years ago
Péter Szilágyi
6f3cb12924
core: allow modifying test-chain block times
9 years ago
Felix Lange
8c4dab77ba
all: move common.Database to package ethdb
9 years ago
Péter Szilágyi
cdc2662c40
core: split out TD from database and all internals
9 years ago
Gustav Simonsson
7324176f70
Add tests for uncle timestamps and refactor timestamp type
9 years ago
Jeffrey Wilcke
a23478c0be
core, eth, trie, xeth: merged state, chain, extra databases in one
9 years ago
Jeffrey Wilcke
71d32f54f7
core, miner: added difficulty bomb
9 years ago
Felix Lange
bfbcfbe4a9
all: fix license headers one more time
...
I forgot to update one instance of "go-ethereum" in commit 3f047be5a
.
9 years ago
Felix Lange
3f047be5aa
all: update license headers to distiguish GPL/LGPL
...
All code outside of cmd/ is licensed as LGPL. The headers
now reflect this by calling the whole work "the go-ethereum library".
9 years ago
Jeffrey Wilcke
a32c51effd
cmd, core, eth, common: genesis preparation
...
Implemented the --genesis flag thru which we can set a custom genesis
block, including the official Ethereum genesis block.
10 years ago
Gustav Simonsson
5d6d40f329
Use uint64 on ts in chain_manager, block_processor
10 years ago
Felix Lange
ea54283b30
all: update license information
10 years ago
Jeffrey Wilcke
ab16ce70fc
core, miner, tests: renamed state methods
...
* Update => SyncIntermediate
* Added SyncObjects
SyncIntermediate only updates whatever has changed, but, as a side
effect, requires much more disk space.
SyncObjects will only sync whatever is required for a block and will not
save intermediate state to disk. As drawback this requires more time
when more txs come in.
10 years ago
Jeffrey Wilcke
29e2fb38f8
core, miner: miner header validation, transaction & receipt writing
...
* Miners do now verify their own header, not their state.
* Changed old putTx and putReceipts to be exported
* Moved writing of transactions and receipts out of the block processer
in to the chain manager. Closes #1386
* Miner post ChainHeadEvent & ChainEvent. Closes #1388
10 years ago
Gustav Simonsson
4c490db6af
Use uint64 for block header timestamp
10 years ago
Felix Lange
ceaf1c080b
core: add GenerateChain, GenesisBlockForTesting
10 years ago
Felix Lange
1d42888d30
core/types: make blocks immutable
10 years ago
obscuren
07c3de3f75
core, miner, xeth: renamed gas methods
...
* BuyGas => SubGas
* RefundGas => AddGas
* SetGasPool => SetGasLimit
10 years ago
obscuren
6244b10a8f
core: settable genesis nonce
...
You can set the nonce of the block with `--genesisnonce`. When the
genesis nonce changes and it doesn't match with the first block in your
database it will fail. A new `datadir` must be given if the nonce of the
genesis block changes.
10 years ago
Felix Lange
ec7a2c3442
core: don't remove transactions after block processing
...
The transaction pool drops processed transactions on its own
during pool maintenance.
10 years ago
obscuren
40717465bc
core: fixed tests
10 years ago
obscuren
f6669db001
core: fixed mining strategy
10 years ago
Gustav Simonsson
b1cc9cdc74
Integrate new ethash API and change geth makedag cmd
10 years ago
obscuren
735b029db9
core: return the index of the block that failed when inserting a chain
10 years ago
obscuren
145e02fc54
core, miner: added value check on tx validation
...
* 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
10 years ago
obscuren
405720b218
xeth, core, cmd/utils: Transaction can not be over block gas limit
...
Transactions will be invalidated when the tx.gas_limit > block.gas_limit
10 years ago
obscuren
888ece0cb2
core: fixed test
10 years ago
obscuren
97b0c4b697
core: moved TD calculation from proc to chain
10 years ago
obscuren
6184781b49
Improved transaction pool
...
The transaction pool will now some easily be able to pre determine the
validity of a transaction by checking the following:
* Account existst
* gas limit higher than the instrinsic gas
* enough funds to pay upfront costs
* nonce check
10 years ago
obscuren
9c55576c7b
Block header changed & console miner control
...
* miner control moved to `admin.miner`
* miner option to set extra data
* block extra now bytes
10 years ago
obscuren
e1ed8c33bd
Improved chain manager, improved block processor, fixed tests
...
* ChainManager allows cached future blocks for later processing
* BlockProcessor allows a 4 second window on future blocks
* Fixed tests
10 years ago
obscuren
b8124ec791
Removed old (unused) argument
10 years ago
obscuren
0330077d76
moved state and vm to core
10 years ago
obscuren
14a2f42f37
fixed chain event. Closes #529
10 years ago
obscuren
8ce6a36478
converted chain manager
10 years ago
obscuren
b523441361
Moved ethutil => common
10 years ago
obscuren
ef6706696c
Add additional extra database for non-protocol related data
...
* Add transaction to extra database after a successful block process
10 years ago
obscuren
cd856cb213
Separated block db from state db. Partial fix for #416
10 years ago
obscuren
84a4f761f3
uncle validation
10 years ago
obscuren
26de12d9bf
Changed nonce to a uint64
10 years ago
obscuren
313fe3861b
fixed pow stuff
10 years ago
Matthew Wampler-Doty
de9f79133f
Introducing ethash
10 years ago
Ethan Buchman
0efd6a881a
public functions for making chains on the fly
10 years ago