Platform parameters¶
About platform parameters¶
Platform parameters are configuration parameters for the blockchain platform. These parameters apply to the blockchain network and to all ecosystems in the network.
Where platform parameters are stored¶
Platform parameters are stored in the system_parameters
table.
This table is available in the first (default) ecosystem that is created on the blockchain network.
Changing platform parameters¶
Changes to platform parameters must be introduced as a result of voting.
Platform parameters by purpose¶
Fuel and currencies¶
Rewards and commission:
Fuel units exchange:
Prices for data:
Prices for new elements:
Prices for operations:
Platform parameters¶
block_reward¶
Amount of APL tokens that is awarded to the node that generated a block.
An account that receives the reward is specified in the full_nodes parameter.
This parameter is measured in APL tokens.
blockchain_url¶
This parameter is deprecated.
commission_size¶
Commission percent.
This amount of commission is collected from the total contract cost. Commission is applied to the total contract cost in APL tokens.
Tokens are transferred to the account specified in the commission_wallet parameter.
commission_wallet¶
Account that collects commission for operations.
Size of the commission is specified in the commission_size parameter.
default_ecosystem_contract¶
Source code of the default contract for a new ecosystem.
This contract provides access rights to the ecosystem founder.
default_ecosystem_page¶
Source code of the default page for a new ecosystem.
fuel_rate¶
Exchange rate for tokens of different ecosystems to fuel units.
Format for this parameter is:
[["ecosystem_id", "token_to_fuel_rate"], ["ecosystem_id2", "token_to_fuel_rate2"], ...]
ecosystem_id
Ecosystem identifier.
token_to_fuel_rate
Exchange rate of tokens to fuel units.
Example:
[["1","1000000000000000"], ["2", "1000"]]
One token from ecosystem 1 is exchanged to 1000000000000000 fuel units. One token from ecosystem 2 is exchanged to 1000 fuel units.
full_nodes¶
List of validating nodes of the blockchain network.
Format for this parameter is:
[["host:port","wallet_id","node_pub"], ["host2:port2","wallet_id2","node_pub2"]]
host:port
Address and port of the node host.
Transactions and new blocks are sent to this host. This address can also be used to obtain the full blockchain starting from the first block.
wallet_id
Wallet (account identifier) that receives rewards for generating new blocks and processing transactions.
node_pub
Public key of the node. This key is used to check block signatures.
gap_between_blocks¶
Amount of time, in seconds, that a node can use to create a new block.
This parameter is a network parameter. All nodes in the network use it to determine when to generate new blocks. If a node did not create a block in this time period, the turn passes to the next node in a list of validating nodes.
Minimum value for this parameter is
1
(one second).
incorrect_blocks_per_day¶
Amount of incorrect blocks per day that a node may generate before it is banned from the network.
When more than half of nodes in a network have received this amount of incorrect blocks from a certain node, this node is banned from the network for node_ban_time amount of time.
max_block_generation_time¶
Maximum amount of time that a node may spend to generate a block, in ms.
max_block_size¶
Maximum block size, in bytes.
max_columns¶
Maximum number of columns in tables.
The predefined
id
column is not included in this maximum.
max_forsign_size¶
Maximum size, in bytes, of a forsign (string to be signed) generated for a transaction.
max_fuel_block¶
Maximum total fuel cost of a single block.
max_fuel_tx¶
Maximum total fuel cost of a single transaction.
max_indexes¶
Maximum number of index fields in a table.
max_tx_block¶
Maimum number of transactions in a single block.
max_tx_block_per_user¶
Maximum number of transactions in one block that belong to one account.
max_tx_size¶
Maximum transaction size, in bytes.
node_ban_time¶
Global ban period for nodes, in ms.
When more than half of nodes in a network have received incorrect_blocks_per_day amount of blocks from a certain node, this node is banned from the network for the specified amount of time.
node_ban_time_local¶
Local ban period for nodes, in ms.
When a node receives an incorrect block from another node, it bans the sender node locally for this amount of time.
number_of_nodes¶
Maximum number of validating nodes in the full_nodes parameter.
price_create_contract¶
Fuel cost for creating a new contract.
This parameter defines additional fuel cost of the
@1NewContract
contract. When this contract is executed, fuel costs for executing functions in this contract are also counted and added to the total cost.This parameter is measured in fuel units. Fuel units are exchanged to APL tokens using fuel_rate.
price_create_page¶
Fuel cost for creating a new page.
This parameter defines additional fuel cost of the
@1NewPage
contract. When this contract is executed, fuel costs for functions in this contract are also counted and added to the total cost.This parameter is measured in fuel units. Fuel units are exchanged to APL tokens using fuel_rate.
price_exec_address_to_id¶
Fuel cost ofAddressToId
function call.
price_exec_bind_wallet¶
Fuel cost ofActivate
function call.
price_exec_column_condition¶
Fuel cost ofColumnCondition
function call.
price_exec_compile_contract¶
Fuel cost ofCompileContract
function call.
price_exec_contains¶
Fuel cost ofContains
function call.
price_exec_contract_by_id¶
Fuel cost ofGetContractById
function call.
price_exec_contract_by_name¶
Fuel cost ofGetContractByName
function call.
price_exec_contracts_list¶
Fuel cost ofContractsList
function call.
price_exec_create_column¶
Fuel cost ofCreateColumn
function call.
price_exec_create_ecosystem¶
Fuel cost ofCreateEcosystem
function call.
price_exec_create_table¶
Fuel cost ofCreateTable
function call.
price_exec_ecosys_param¶
Fuel cost ofEcosysParam
function call.
price_exec_eval¶
Fuel cost ofEval
function call.
price_exec_eval_condition¶
Fuel cost ofEvalCondition
function call.
price_exec_flush_contract¶
Fuel cost ofFlushContract
function call.
price_exec_has_prefix¶
Fuel cost ofHasPrefix
function call.
price_exec_id_to_address¶
Fuel cost ofIdToAddress
function call.
price_exec_is_object¶
Fuel cost ofIsObject
function call.
price_exec_join¶
Fuel cost ofJoin
function call.
price_exec_json_to_map¶
Fuel cost ofJSONToMap
function call.
price_exec_len¶
Fuel cost ofLen
function call.
price_exec_perm_column¶
Fuel cost ofPermColumn
function call.
price_exec_perm_table¶
Fuel cost ofPermTable
function call.
price_exec_pub_to_id¶
Fuel cost ofPubToID
function call.
price_exec_replace¶
Fuel cost ofReplace
function call.
price_exec_sha256¶
Fuel cost ofSha256
function call.
price_exec_size¶
Fuel cost ofSize
function call.
price_exec_substr¶
Fuel cost ofSubstr
function call.
price_exec_sys_fuel¶
Fuel cost ofSysFuel
function call.
price_exec_sys_param_int¶
Fuel cost ofSysParamInt
function call.
price_exec_sys_param_string¶
Fuel cost ofSysParamString
function call.
price_exec_table_conditions¶
Fuel cost ofTableConditions
function call.
price_exec_unbind_wallet¶
Fuel cost ofDeactivate
function call.
price_exec_update_lang¶
Fuel cost ofUpdateLang
function call.
price_exec_validate_condition¶
Fuel cost ofValidateCondition
function call.
price_tx_data¶
Fuel cost taken per 1024 bytes of data passed to a transaction.
This parameter is measured in fuel units.
rollback_blocks¶
Number of blocks that can be rolled back in case when a fork is detected in the blockchain.