* Private overlay for external messages
* Improve ext msg overlays
* Manage from validator console
* Bypass out queue size limit for high-priority messages
* Shuffle messages in get_external_messages
* Cleanup mempool when creating validator group
* Improve private overlays for externals
1. Allow using validator adnl ids in addition to fullnode ids
2. Set priority per sender, not per overlay
3. Require the same overlay name for all nodes
4. Enable lz4 in private block overlay
* Fix typo, add debug logs
* Enable lz4 in private block overlay by config
Change proto_version for lz4 in catchain overlays to 4
* Add logs for broadcasts in fullnode
---------
Co-authored-by: SpyCheese <mikle98@yandex.ru>
* Utils for writing precompiled contracts
* Precompiled contracts in config, override gas_usage for them
* Add base class for precompiled contracts
* Improve utils for precompiled smc
* Implement GETPRECOMPILEDGAS
* Enable precompiles by flag
* Process null data in PrecompiledSmartContract
* Fix ton_block wasm build
* Fix vm::util::store_(u)long
---------
Co-authored-by: SpyCheese <mikle98@yandex.ru>
* Improve LS runSmcMethod
* Full c7 and libraries
* Don't request c7 (mode 8) in lite-client
* Prioritize remote result in lite-client runmethod (but not runmethodfull)
* Return simplified c7 from runSmgMethod, add flag to return full
---------
Co-authored-by: SpyCheese <mikle98@yandex.ru>
* Cache runSmcMethod queries to LS
* Drop duplicate sendMessage
* Drop sendMessage cache once a minute
---------
Co-authored-by: SpyCheese <mikle98@yandex.ru>
* Remove gas_prices_v3, enable new gas limits by GlobalVersion = 5
* Change final date for higher gas limit
---------
Co-authored-by: SpyCheese <mikle98@yandex.ru>
* Set higher gas limit for special accounts, don't add gas from special accounts to block total
* Make removing special accounts from block gas limits enabled by config
---------
Co-authored-by: SpyCheese <mikle98@yandex.ru>
* Add logs to collator and validator
* More logs to get_ext_messages, decrease verbosity level
* Adjust allowed time lag for last_liteserver_state
* Change verbosity of STATUS message
---------
Co-authored-by: SpyCheese <mikle98@yandex.ru>
* Improve handling outbound message queues
* Cleanup queue faster
* Calculate queue sizes in background
* Force or limit split/merge depending on queue size
* Increase validate_ref limit for transaction
* Add all changes of public libraries to block size estimation
* Don't crash on timeout in GC
* Don't import external messages when queue is too big
---------
Co-authored-by: SpyCheese <mikle98@yandex.ru>
* Add parameter --celldb-compress-depth to speed up celldb
* Fix collator timeout
* Add block_state_cache
* Adjust state cache ttl
* Don't merge shards when queue is too big
* Decrease lt limit if previous block is too old
---------
Co-authored-by: SpyCheese <mikle98@yandex.ru>
* Improve Collator::opt_msg_queue_cleanup, increase collator timeout
* Disable importing ext msgs if queue is too big
* Extend timeout in collator if previous block is too old
---------
Co-authored-by: SpyCheese <mikle98@yandex.ru>
* Check account size limits in unpack_msg_state
* Don't allow deploying a contract with public libs
---------
Co-authored-by: SpyCheese <mikle98@yandex.ru>