Felix Lange 
							
						 
					 
					
						
						
							
						
						42a5b54bf5 
					 
					
						
						
							
							core/vm: improve bitvec comments  
						
						
						
						
					 
					
						2017-09-10 21:04:36 +02: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 
						 
				 
			
				
					
						
							
							
								Martin Holst Swende 
							
						 
					 
					
						
						
							
						
						d6681ed360 
					 
					
						
						
							
							core/vm: Rename + updated doc on jumpdest analysis  
						
						
						
						
					 
					
						2017-09-08 12:47:44 +02:00 
						 
				 
			
				
					
						
							
							
								Mark 
							
						 
					 
					
						
						
							
						
						c1740e4540 
					 
					
						
						
							
							core/types, miner: avoid tx sender miscaching ( #14773 )  
						
						
						
						
					 
					
						2017-09-07 23:22:27 +02:00 
						 
				 
			
				
					
						
							
							
								Fiisio 
							
						 
					 
					
						
						
							
						
						02b4d074f6 
					 
					
						
						
							
							core/asm: use ContainsRune instead of IndexRune ( #15098 )  
						
						
						
						
					 
					
						2017-09-07 23:11:48 +02:00 
						 
				 
			
				
					
						
							
							
								Pawan Singh Pal 
							
						 
					 
					
						
						
							
						
						69c8be7c86 
					 
					
						
						
							
							core: delete dao.go ( #15113 )  
						
						... 
						
						
						
						- dao.go is already present in consensus/misc
- core/dao.go is not used anywhere in the codebase 
						
						
					 
					
						2017-09-07 23:08:06 +02:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						c4d21bc8e5 
					 
					
						
						
							
							Merge pull request  #14631  from zsfelfoldi/bloombits2  
						
						... 
						
						
						
						core/bloombits, eth/filter: transformed bloom bitmap based log search 
						
						
					 
					
						2017-09-06 13:00:35 +03:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						564c8f3ae6 
					 
					
						
						
							
							core/bloombits: drop nil-matcher special case  
						
						
						
						
					 
					
						2017-09-06 11:14:22 +03:00 
						 
				 
			
				
					
						
							
							
								Zsolt Felfoldi 
							
						 
					 
					
						
						
							
						
						451ffdb62b 
					 
					
						
						
							
							core/bloombits: use general filters instead of addresses and topics  
						
						
						
						
					 
					
						2017-09-06 11:14:21 +03:00 
						 
				 
			
				
					
						
							
							
								Zsolt Felfoldi 
							
						 
					 
					
						
						
							
						
						6ff2c02991 
					 
					
						
						
							
							core/bloombits: AddBloom index parameter and fixes variable names  
						
						
						
						
					 
					
						2017-09-06 11:14:20 +03:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						f585f9eee8 
					 
					
						
						
							
							core, eth: clean up bloom filtering, add some tests  
						
						
						
						
					 
					
						2017-09-06 11:14:19 +03:00 
						 
				 
			
				
					
						
							
							
								Zsolt Felfoldi 
							
						 
					 
					
						
						
							
						
						4ea4d2dc34 
					 
					
						
						
							
							core, eth: add bloombit indexer, filter based on it  
						
						
						
						
					 
					
						2017-09-06 11:13:13 +03:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						cc313e78b7 
					 
					
						
						
							
							core: use blocks and avoid deep reorgs in txpool  
						
						
						
						
					 
					
						2017-09-05 19:50:29 +03:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						da7d57e07c 
					 
					
						
						
							
							core: make txpool operate on immutable state  
						
						
						
						
					 
					
						2017-09-05 13:34:41 +03:00 
						 
				 
			
				
					
						
							
							
								Martin Holst Swende 
							
						 
					 
					
						
						
							
						
						e7408b5552 
					 
					
						
						
							
							core/vm: Make MaxCodesize non-retroactive  ( #15072 )  
						
						... 
						
						
						
						* core/vm: Make max_codesize only applicable post Spurious Dragon/158/155/161/170
* tests: Remove expected failure 
						
						
					 
					
						2017-09-04 12:53:25 +03:00 
						 
				 
			
				
					
						
							
							
								Martin Holst Swende 
							
						 
					 
					
						
						
							
						
						1901521ed0 
					 
					
						
						
							
							core: Fix flaw where underpriced locals were removed ( #15081 )  
						
						... 
						
						
						
						* core: Fix flaw where underpriced locals were removed
* core: minor code cleanups for tx pool tests 
						
						
					 
					
						2017-09-04 12:48:36 +03:00 
						 
				 
			
				
					
						
							
							
								Martin Holst Swende 
							
						 
					 
					
						
						
							
						
						23b51a68cb 
					 
					
						
						
							
							core/vm: avoid state lookup during gas calc for call ( #15061 )  
						
						
						
						
					 
					
						2017-09-04 10:56:45 +02:00 
						 
				 
			
				
					
						
							
							
								Martin Holst Swende 
							
						 
					 
					
						
						
							
						
						07635e43e2 
					 
					
						
						
							
							core/vm: renamed struct member + go fmt  
						
						
						
						
					 
					
						2017-08-28 13:33:24 +02:00 
						 
				 
			
				
					
						
							
							
								Martin Holst Swende 
							
						 
					 
					
						
						
							
						
						64a3a3d23c 
					 
					
						
						
							
							core/vm: Fix testcase input for ecmul  
						
						
						
						
					 
					
						2017-08-28 13:30:26 +02:00 
						 
				 
			
				
					
						
							
							
								Martin Holst Swende 
							
						 
					 
					
						
						
							
						
						bc2a5578c0 
					 
					
						
						
							
							core/vm: more benchmarks  
						
						
						
						
					 
					
						2017-08-27 14:00:32 +02:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						08f27428b4 
					 
					
						
						
							
							core, tests: implement Metropolis EIP 684  
						
						
						
						
					 
					
						2017-08-25 13:00:27 +03:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						27a5622e99 
					 
					
						
						
							
							Merge pull request  #15028  from karalabe/metropolis-iceage  
						
						... 
						
						
						
						consensus, core, tests: implement Metropolis EIP 649 
						
						
					 
					
						2017-08-25 11:00:51 +03:00 
						 
				 
			
				
					
						
							
							
								Felix Lange 
							
						 
					 
					
						
						
							
						
						ad16aeb0a2 
					 
					
						
						
							
							core/types: encode receipt status in PostState field  
						
						... 
						
						
						
						This fixes a regression where the new Failed field in ReceiptForStorage
rejected previously stored receipts. Fix it by removing the new field
and store status in the PostState field. This also removes massive RLP
hackery around the status field. 
						
						
					 
					
						2017-08-24 23:51:50 +02:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						b872961ec8 
					 
					
						
						
							
							consensus, core, tests: implement Metropolis EIP 649  
						
						
						
						
					 
					
						2017-08-24 17:16:39 +03:00 
						 
				 
			
				
					
						
							
							
								Felix Lange 
							
						 
					 
					
						
						
							
						
						54b1de67e2 
					 
					
						
						
							
							core/vm: make jumpdest code nicer  
						
						
						
						
					 
					
						2017-08-24 13:09:53 +02:00 
						 
				 
			
				
					
						
							
							
								nkbai 
							
						 
					 
					
						
						
							
						
						68955ed2eb 
					 
					
						
						
							
							core/types: fix create indicator in Transaction.String ( #15025 )  
						
						
						
						
					 
					
						2017-08-24 12:48:13 +02:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						ff9a868232 
					 
					
						
						
							
							core/state: revert metro suicide map addition ( #15024 )  
						
						
						
						
					 
					
						2017-08-24 12:42:00 +02:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						3c48a25762 
					 
					
						
						
							
							Merge pull request  #15014  from rjl493456442/metropolis-eip658  
						
						... 
						
						
						
						core: add status as a consensus field in receipt 
						
						
					 
					
						2017-08-23 14:39:37 +03:00 
						 
				 
			
				
					
						
							
							
								Martin Holst Swende 
							
						 
					 
					
						
						
							
						
						286ec5df40 
					 
					
						
						
							
							cmd/evm, core/vm, internal/ethapi: Show error when exiting ( #14985 )  
						
						... 
						
						
						
						* cmd/evm, core/vm, internal/ethapi: Add 'err' to tracer interface CaptureEnd
* cmd/evm: fix nullpointer when there is no error 
						
						
					 
					
						2017-08-23 14:37:18 +03:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						4ee92f2d19 
					 
					
						
						
							
							core/types: reject Metro receipts with > 0x01 status bytes  
						
						
						
						
					 
					
						2017-08-23 13:57:15 +03:00 
						 
				 
			
				
					
						
							
							
								rjl493456442 
							
						 
					 
					
						
						
							
						
						28aea46ac0 
					 
					
						
						
							
							core: implement Metropolis EIP 658, receipt status byte  
						
						
						
						
					 
					
						2017-08-22 18:35:17 +03:00 
						 
				 
			
				
					
						
							
							
								Ti Zhou 
							
						 
					 
					
						
						
							
						
						2fd5ba6bd4 
					 
					
						
						
							
							core/vm: fix typo in method documentation ( #15019 )  
						
						... 
						
						
						
						Signed-off-by: Ti Zhou <tizhou1986@gmail.com > 
						
						
					 
					
						2017-08-22 12:43:36 +03:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						afdfdebd87 
					 
					
						
						
							
							Merge pull request  #14983  from karalabe/metropolis-revert  
						
						... 
						
						
						
						core/vm: implement REVERT metropolis opcode 
						
						
					 
					
						2017-08-21 12:23:03 +03:00 
						 
				 
			
				
					
						
							
							
								Miya Chen 
							
						 
					 
					
						
						
							
						
						bf1e263128 
					 
					
						
						
							
							core, light: send chain events using event.Feed ( #14865 )  
						
						
						
						
					 
					
						2017-08-18 12:58:36 +02:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						f9fb70d2ee 
					 
					
						
						
							
							core/vm: rework reversion to work on a higher level  
						
						
						
						
					 
					
						2017-08-17 16:50:35 +03:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						1335a6cc8c 
					 
					
						
						
							
							core/vm, crypto/bn256: fix bn256 use and pairing corner case  
						
						
						
						
					 
					
						2017-08-17 16:46:46 +03:00 
						 
				 
			
				
					
						
							
							
								Jeffrey Wilcke 
							
						 
					 
					
						
						
							
						
						b70a73cd3e 
					 
					
						
						
							
							core/vm: implement REVERT metropolis opcode  
						
						
						
						
					 
					
						2017-08-16 15:32:59 +03:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						4e0fea4d30 
					 
					
						
						
							
							core/vm: polish RETURNDATA, add missing returns to CALL*  
						
						
						
						
					 
					
						2017-08-16 13:43:14 +03:00 
						 
				 
			
				
					
						
							
							
								Jeffrey Wilcke 
							
						 
					 
					
						
						
							
						
						9bd6068fef 
					 
					
						
						
							
							core/vm: implement RETURNDATA metropolis opcodes  
						
						
						
						
					 
					
						2017-08-16 13:43:08 +03:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						3df7142b3e 
					 
					
						
						
							
							core/vm: minor polishes, fix STATICCALL for precompiles  
						
						... 
						
						
						
						* Fix STATICCALL so it is able to call precompiles too
 * Fix write detection to use the correct value argument of CALL
 * Fix write protection to ignore the value in CALLCODE 
						
						
					 
					
						2017-08-15 14:40:12 +03:00 
						 
				 
			
				
					
						
							
							
								Jeffrey Wilcke 
							
						 
					 
					
						
						
							
						
						3d123bcde6 
					 
					
						
						
							
							core/vm: implement metropolis static call opcode  
						
						
						
						
					 
					
						2017-08-15 13:03:49 +03:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						f8d8b56b28 
					 
					
						
						
							
							core/vm: optimize copy-less data retrievals  
						
						
						
						
					 
					
						2017-08-14 17:08:49 +03:00 
						 
				 
			
				
					
						
							
							
								Martin Holst Swende 
							
						 
					 
					
						
						
							
						
						d8aaa3a215 
					 
					
						
						
							
							core/vm: benchmarking of metro precompiles  
						
						
						
						
					 
					
						2017-08-14 15:37:09 +03:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						6131dd55c5 
					 
					
						
						
							
							core/vm: polish precompile contract code, add tests and benches  
						
						... 
						
						
						
						* Update modexp gas calculation to new version
 * Fix modexp modulo 0 special case to return zero 
						
						
					 
					
						2017-08-14 15:27:44 +03:00 
						 
				 
			
				
					
						
							
							
								Martin Holst Swende 
							
						 
					 
					
						
						
							
						
						967e097faa 
					 
					
						
						
							
							core/vm: Address review concerns  
						
						
						
						
					 
					
						2017-08-14 10:57:54 +02:00 
						 
				 
			
				
					
						
							
							
								Jeffrey Wilcke 
							
						 
					 
					
						
						
							
						
						7bbdf3e268 
					 
					
						
						
							
							core: add Metropolis pre-compiles (EIP 197, 198 and 213)  
						
						
						
						
					 
					
						2017-08-11 15:24:54 +03:00 
						 
				 
			
				
					
						
							
							
								Joel Burget 
							
						 
					 
					
						
						
							
						
						833eeb9f23 
					 
					
						
						
							
							core/vm/runtime: remove unused state parameter to NewEnv ( #14953 )  
						
						... 
						
						
						
						* core: Remove unused `state` parameter to `NewEnv`.
`cfg.State` is used instead.
* core/vm/runtime: remove unused import 
						
						
					 
					
						2017-08-11 14:29:32 +03:00 
						 
				 
			
				
					
						
							
							
								Felix Lange 
							
						 
					 
					
						
						
							
						
						374c49e0ac 
					 
					
						
						
							
							Merge pull request  #14522  from ethereum/go-ethereum/chainproc2  
						
						
						
						
					 
					
						2017-08-08 13:37:59 +02:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						1c45f2f42e 
					 
					
						
						
							
							core: fix txpool journal and test races  
						
						
						
						
					 
					
						2017-08-08 12:22:01 +03:00 
						 
				 
			
				
					
						
							
							
								Péter Szilágyi 
							
						 
					 
					
						
						
							
						
						8edaaa227d 
					 
					
						
						
							
							core: polish chain indexer a bit  
						
						
						
						
					 
					
						2017-08-07 17:38:33 +03:00