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:
- price_create_ecosystem
- price_create_table
- price_create_column
- price_create_contract
- price_create_menu
- price_create_page
- price_create_application
Prices for operations:
Platform parameters¶
block_reward¶
Amount of GAC tokens that is awarded to the node that generated a block.
An account that receives the reward is specified in the full_nodes parameter.
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 GAC 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","1000000000000"], ["2", "1000"]]
One token from ecosystem 1 is exchanged to 1000000000000 fuel units. One token from ecosystem 2 is exchanged to 1000 fuel units.
price_create_rate¶
Fuel rate for new elements.
full_nodes¶
List of validating nodes of the blockchain network.
Format for this parameter is:
[["tcp_host:port1","api_host:port2","wallet_id","node_pub"], ["tpc_host2:port1","api_host2:port2","wallet_id2","node_pub2"]]
tcp_host:port1
TCP 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.
api_host:port2
API Address and port of the node host.
Can access any function of the platform without using the Govis software client through that API address. more RESTful API.
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_ecosystem¶
Fuel cost for creating a new ecosystem.
This parameter defines additional fuel cost of the
@1NewEcosystem
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 GAC tokens using fuel_rate and price_create_rate.
price_create_application¶
Fuel cost for creating a new application.
This parameter defines additional fuel cost of the
@1NewApplication
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 GAC tokens using fuel_rate and price_create_rate.
price_create_table¶
Fuel cost for creating a new table.
This parameter defines additional fuel cost of the
@1NewTable
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 GAC tokens using fuel_rate and price_create_rate.
price_create_column¶
Fuel cost for creating a new column.
This parameter defines additional fuel cost of the
@1NewColumn
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 GAC tokens using fuel_rate and price_create_rate.
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 GAC tokens using fuel_rate and price_create_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 GAC tokens using fuel_rate and price_create_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.
price_tx_size_wallet¶
Transaction size cost, in GAC tokens.
In addition to ecosystem 1,Contracts executed in other ecosystems will generate block space usage fees on a proportional basis,Cost per Megabyte of transaction size generates price_tx_size_wallet GAC tokens token costs.
rollback_blocks¶
Number of blocks that can be rolled back in case when a fork is detected in the blockchain.