neo-go/pkg/core
Roman Khimov eb11e5fb11 core: implement basic policying support, fix #370
Implement mempool and consensus block creation policies, almost the same as
SimplePolicy plugin for C# node provides with two caveats:
 * HighPriorityTxType is not configured and hardcoded to ClaimType
 * BlockedAccounts are not supported

Other than that it allows us to run successfuly as testnet CN, previously our
proposals were rejected because we were proposing blocks with oversized
transactions (that are rejected by PoolTx() now).

Mainnet and testnet configuration files are updated accordingly, but privnet
is left as is with no limits.

Configuration is currently attached to the Blockchain and so is the code that
does policying, it may be moved somewhere in the future, but it works for
now.
2020-02-19 12:19:02 +03:00
..
block transaction: forbid serializing invalid transactions 2020-02-03 16:33:03 +03:00
mempool mempool: return fee along with tx when requesting tx 2020-02-19 12:19:02 +03:00
state core: introduce ValidatorsCount, make a proper count 2020-02-13 13:07:34 +03:00
storage storage: add Exists flag to KeyValue in batch 2020-02-12 12:16:31 +03:00
test_data Persist blockchain with leveldb on disk (#48) 2018-03-17 12:53:21 +01:00
transaction Add JSON tags for RPC response types 2020-02-13 19:06:54 +03:00
blockchain.go core: implement basic policying support, fix #370 2020-02-19 12:19:02 +03:00
blockchain_test.go core: refactor out Block, BlockBase and Header structs 2020-01-16 10:16:24 +03:00
blockchainer.go core: implement basic policying support, fix #370 2020-02-19 12:19:02 +03:00
cacheddao.go core: add cachedDao to cache accounts and contracts 2019-12-13 19:57:17 +03:00
cacheddao_test.go core: add cachedDao to cache accounts and contracts 2019-12-13 19:57:17 +03:00
dao.go core: introduce ValidatorsCount, make a proper count 2020-02-13 13:07:34 +03:00
dao_test.go transaction: forbid serializing invalid transactions 2020-02-03 16:33:03 +03:00
gas_price.go core: fix GAS price definitions 2020-02-06 18:19:08 +03:00
gas_price_test.go core: restrict GAS available for invocation transactions 2020-01-22 14:31:54 +03:00
header_hash_list.go util: implement io.Serializable for Uint256 2019-11-14 14:20:38 +03:00
helper_test.go core: deploy new smart-contract in test blocks 2020-02-18 11:59:28 +03:00
interop_neo.go core: implement Neo.Storage.Find interop 2019-12-26 15:21:41 +03:00
interop_neo_test.go core: refactor out Block, BlockBase and Header structs 2020-01-16 10:16:24 +03:00
interop_system.go core: substitute bad notifications with error messages 2020-02-07 15:34:59 +03:00
interops.go core: refactor out Block, BlockBase and Header structs 2020-01-16 10:16:24 +03:00
interops_test.go core,rpc: close Blockchain in tests 2020-01-10 11:47:56 +03:00
prometheus.go core: refactor out MemPool 2020-01-16 10:16:24 +03:00
spent_coin_state.go io: add type-specific read/write methods 2019-12-12 20:19:50 +03:00
spent_coin_state_test.go internal: moved testutil method to internal package 2019-12-11 13:14:43 +03:00
uint32.go *: goimports 2019-12-17 14:51:28 +03:00
unspent_coin_state.go io: rename Read/WriteBytes to Read/WriteB 2019-12-12 20:19:50 +03:00
unspent_coint_state_test.go core: renames entities-> state and removed State prefix 2019-12-11 13:14:18 +03:00
util.go core: export UtilityTokenID and GoverningTokenID 2020-02-19 12:13:27 +03:00
util_test.go core: export UtilityTokenID and GoverningTokenID 2020-02-19 12:13:27 +03:00