EmelyanenkoK
8bc20ede2e
Add archive manager index ( #685 )
...
* Optimize get_file_desc_by_ seqno/lt/ut
* Optimize get_next_file_desc
---------
Co-authored-by: SpyCheese <mikle98@yandex.ru>
2023-04-28 12:58:02 +03:00
EmelyanenkoK
dd8658c4db
Comment out excessive checks of outbound messages queue
2023-04-27 14:43:37 +03:00
EmelyanenkoK
d067e6ca3f
Make stricter cleanup timelimit
2023-04-26 21:32:26 +03:00
EmelyanenkoK
7ee70778d2
Add timeout for out_msg_queue_cleanup ( #679 )
...
Co-authored-by: SpyCheese <mikle98@yandex.ru>
2023-04-26 09:15:16 +03:00
SpyCheese
5e0dadfff6
Rollback celldb optimization ( #658 )
2023-03-30 10:03:05 +03:00
EmelyanenkoK
47311d6e0e
Improve tweaking for high throughput ( #610 )
...
* Option "--disable-ext-msg-broadcast"
* "Get shard out queue size" query
* Move disabling ext msg broadcasts from command-line arguments to config
* Fix compilation error
* Asynchronous store_cell and gc in celldb
* Make GC in celldb work evenly over time
* Increase timeouts for downloading blocks
* Reuse blocks from previous rounds in validator session
* Use Rldp2 in FullNode for downloading persistent states and archives
* Improve logs in download-archive-slice and download-state
* Decrease delay between serializing shards
* Make CellDbIn::load_cell synchronous to avoid interfering with store_cell
---------
Co-authored-by: SpyCheese <mikle98@yandex.ru>
2023-03-15 10:47:35 +03:00
Marat
078aabe50e
Add method listBlockTransactionsExt to liteserver ( #399 )
...
* Verify proof for method blocks.getTransactions
* check completeness of response
* fix start_lt
* fix mode & 128, check bTxes->ids_ out of bounds
* Improve gitactions; separate cpp-check (#346 )
* Use ninja build tool and compile blockchain-explorer
Ninja builds TON much faster;
* Use clang instead of gcc
* remove blockchain-explorer
since target not found on github action
* move ccpcheck to other gitaction
* run nativelib-java only against wallets branch for now
* rename gitaction
* Update windows2019x64-tonlib-java.yml
* Update windows2019x64-tonlib-java.yml
* Update macos-10.15-tonlib-java.yml
* Update windows2019x64-tonlib-java.yml
* Update windows2019x64-tonlib-java.yml
* rebase
* update tlo's
* Revert "Improve gitactions; separate cpp-check (#346 )"
This reverts commit bd1d96e6d391e48840d81cfcf10d2692848e504e.
* add checks, simplify ls response
* Revert workflows
* Add verifying proofs
* fix win build
---------
Co-authored-by: neodiX42 <namlem@gmail.com>
2023-03-07 19:49:25 +03:00
neodiX42
f06d5cb053
Make path separator cross-platform in few places ( #628 )
...
* make path separator cross-platform in few places
* reuse path separator definer
2023-03-05 14:15:53 +03:00
SpyCheese
706be23c83
Limit maximal Merkle depth ( #626 )
2023-02-28 12:06:57 +03:00
SpyCheese
0578cb4a42
Fix typos, UBs and warnings ( #625 )
2023-02-28 12:06:09 +03:00
neodiX42
5a47495d87
Add cross-platform Linux and macOS binaries (statically compiled with NixPkgs) + wasm artifacts ( #621 )
...
* fix build
* nix flake
* nix package
* static musl build env
* make all builds in static env
* GH Actions nightly and static workflows
* deb package
* cmake install {adnl-proxy,blockchain-explorer,create-state,http-proxy,rldp-http-proxy,storage-cli}
* nix flake: add static glibc build variant
* GH Actions: deb-nightly-{musl,glibc_static}, tests-rolling jobs
* rpm package
* build blockchain-explorer
* GH Actions: deb_rpm-nightly: ubuntu-{latest=>22.04}
* crypto/pow-miner: skip install
* ghactions: tests-rolling: show tests run, progress
* ghactions: deb_rpm-nightly: add manual trigger [skip ci]
* nix flake refactor
* find_package=>pkg-config(zlib)
FindZLIB.cmake can't find static zlib prior to CMake 3.24, so use
pkg-config.
* nix old glibc build
* nix aarch64 support
* packages: Populate APT and RPM repos at ton-repo
- {deb,rpm}.sh: Separate build and install dirs
- rpm.sh: Conditionally include lib/
- Accomodate local CI runs w/act
* [skip ci] README packages
* fix aarch64 build -Wnoerror=address
* [skip ci] rpm set releasever
* [skip ci] document local packages upload
* m1 build: gate cpu=apple-m1 by clang version
* packages: Ship musl binaries + old glibc dylibs
* packages: macos build
* nix: bump nixpkgs
* fix windows CI build
* [skip ci] nix: static aarch64 builds
* packages: deb,rpm multiarch
* ghactions: aarch64 musl deb,rpm build
* [skip ci] deb build: deref source links, -x
* [skip ci] nix darwin static build
* [skip ci] nix common hostPkgs
* [skip ci] brew: move formula over to homebrew-ton-repo
* [skip ci] nix fix aarch64-linux build
* [skip ci] ghactions: nix use GITHUB_TOKEN
* [skip ci] Move from ton-repo to gh releases
* [skip ci] ghactions aarch64-darwin self-hosted runner
* [skip ci] ghactions deb,rpm nightly 10h timeout
* [skip ci] fix brew install
fixes
Errno::EACCES: Permission denied @ dir_s_mkdir - /private/tmp/ton-XXX/bin/.brew_home
* [skip ci] ghactions deb,rpm nightly: don't upload ton-packages as we gh release them later
* [skip ci] README: brew instructions
* [skip ci] nightly linux binaries release
* [skip ci] packages: ship macos dylib
* [skip ci] ghactions: Run Windows build nightly, upload to gh releases
* nix: remove defaultPackage, switch to different oldglibc build method
We used to rebuild nixpkgs-stable with old glibc, which broke on aarch64
due to its particular bootstrap toolchain. This just takes nixos 19.09's
version of GCC but new dependencies, sidestepping the issue.
* fix rpm release, add aur release
* fix local (act) ci run
* ghactions: linux-nightly: Print out SSH public keys
* ghactions: bump cachix actions
* nix: default devShell
* [skip ci] rpm,aur: Ship lib
* [skip ci] packages: windows: Remove CMake files from out
* [skip ci] packages: Import chocolatey package
* fixup! fix rpm release, add aur release
* [skip ci] packages: aarch64-linux: build dylib as well
* [skip ci] ghactions: run on self-hosted
* [skip ci] ghactions: windows-nightly: Bump nodejs actions
* [skip ci] nix: Only add Linux packaging tools on Linux
* [skip ci] doc: document direct download binaries in README
* fix tonlib android jni ci
* fixup! fix tonlib android jni ci
* [skip ci] ghactions: Update GH release dates
Errata: doesn't update tags.
* [skip ci] ghactions: Fix racy brew gh release by splitting arch
* initiali commit - binaries only
* fixes
* fixes
* fixes
* fixes
* remove packages dir for now
* add storage-daemon storage-daemon-cli
* fix emulator
* try macos aarch64
* try macos aarch64
* try macos aarch64
* try macos aarch64
* try macos aarch64
* try macos aarch64
* try macos aarch64
* try macos aarch64
* try macos aarch64
* try macos aarch64
* try macos aarch64 sh
* try macos aarch64 sh
* try macos aarch64 bash
* try macos aarch64 bash
* try macos aarch64 bash
* try macos aarch64 bash
* try macos aarch64 bash
* try macos aarch64 bash
* try macos aarch64 bash
* fix funcfiftlib compilation with emscripten
* fix funcfiftlib compilation with emscripten
* add github action to compile TON with emscripten
* add github action to compile TON with emscripten
* add github action to compile TON with emscripten
* add github action to compile TON with emscripten
* add github action to compile TON with emscripten
* add github action to compile TON with emscripten
* try macos aarch64
* fix funcfiftlib compilation with emscripten
* fix funcfiftlib compilation with emscripten
* add github action to compile TON with emscripten
* disable aarch64 github actions for now
* disable aarch64 github actions for now
* trigger all GH actions
* trigger all GH actions 2
* trigger all GH actions 3
* trigger all GH actions 4
* trigger all GH actions 5
* put back rldp-http-proxy to win build
* put back rldp-http-proxy to win build
* dont use pkgConfig for zlib
* fix zlib_library
* use BUILD_SHARED_LIBS flag for static compilation
* test 1
* test 2
* add wasm binaries to release.
test 3
* add simple binaries' execution test
* build emulator-emscripten
* build and add into artifacts wasm tlbc and emulator-emscripten
* build and add into artifacts wasm tlbc and emulator-emscripten, 2
* build and add into artifacts wasm tlbc and emulator-emscripten, 3
* build and add into artifacts wasm tlbc and emulator-emscripten, 4
* build emulator-emscripten with static libs
* minor nix mac aarch64 fix
* add single artifacts to release
* bypass $repo to Dockerfile
* add wasm artifacts to release
* add wasm artifacts to release
* add wasm artifacts to release
* add wasm artifacts to release
* add more artifacts to release; remove compilation against Ubuntu 18.04.
* retrieve GITHUB_TOKEN for ton-blockchain/ton
* remove binary check for arm64
---------
Co-authored-by: tonthemoon <tonthemoon@mailbox.org>
2023-02-27 12:32:41 +03:00
Andrey Pfau
426879cd82
ErrorCode::notready
for "block is not applied": (#594 )
2023-02-02 10:04:54 +03:00
SpyCheese
1e4eecfdb0
Logs and size limits for incoming queries in FullNodeShard ( #601 )
...
* Log incoming queries in FullNodeShard
* Limit size for some queries in FullNodeShard
2023-02-02 10:04:19 +03:00
EmelyanenkoK
3b3c25b654
Add account state by transaction and emulator (extended) ( #592 )
...
* account_state_by_transaction
* Correct time calculation
* Bug fixes
* Refactor
* namespace block::transaction
* smc.forget
* RunEmulator: remove wallet_id
* Refactor & fixes
* AccountStateByTransaction: use shardchain block instead of masterchain block
* transaction emulator core
* refactor
* tx emulator major functionality
* small format changes
* readme
* clean
* return json, add support for init messages
* tx emulator readme
* refactor getConfigParam and getConfigAll
* add shardchain_libs_boc parameter
* option to change verbosity level of transaction emulator
* fix deserializing ShardAccount with account_none
* add mode needSpecialSmc when unpack config
* emulator: block::Transaction -> block::transaction::Transaction
* Refactor
* emulator: Fix bug
* emulator: Support for emulator-extern
* emulator: Refactor
* Return vm log and vm exit code.
* fix build on macos, emulator_static added
* adjust documentation
* ignore_chksig for external messages
* tvm emulator, run get method
* Added more params for transaction emulator
* Added setters for optional transaction emulator params, moved libs to a new setter
* Added actions cell output to transaction emulator
* fix tonlib build
* refactoring, rand seed as hex size 64, tvm emulator send message
* tvm send message, small refactoring
* fix config decoding, rename
* improve documentation
* macos export symbols
* Added run_get_method to transaction emulator emscipten wrapper
* Fixed empty action list serialization
* Changed actions list cell to serialize as json null instead of empty string in transaction emulator
* stack as boc
* log gas remaining
* Fix prev_block_id
* fix build errors
* Refactor fetch_config_params
* fix failing unwrap of optional rand_seed
* lookup correct shard, choose prev_block based on account shard
* fix tonlib android jni build
---------
Co-authored-by: legaii <jgates.ardux@gmail.com>
Co-authored-by: ms <dungeon666master@protonmail.com>
Co-authored-by: krigga <krigga7@gmail.com>
2023-02-02 10:03:45 +03:00
SpyCheese
45c0270716
Improve handling of absent blocks in archive manager ( #600 )
2023-01-23 14:40:28 +03:00
SpyCheese
13b9f460af
SuspendedAddressList config param ( #585 )
...
* SuspendedAddressList config param
* Change tag for cskip_suspended
2023-01-09 20:37:58 +03:00
SpyCheese
eff610f807
Disable liteServer.getState method ( #573 )
2022-12-27 20:11:22 +03:00
SpyCheese
15cdfb0462
Fix compilation error in manager-disk.cpp ( #556 )
2022-12-15 17:12:43 +03:00
EmelyanenkoK
1b106ef270
Use state with applied shards in liteserver ( #553 )
...
Co-authored-by: SpyCheese <mikle98@yandex.ru>
2022-12-13 17:46:54 +03:00
SpyCheese
ac50074ff6
Fix getting cell-db-reader in AsyncStateSerializer ( #546 )
2022-12-07 21:49:17 +03:00
SpyCheese
33a0d1e8bc
Allow starting node with a newer hardfork in config ( #538 )
2022-11-30 12:12:19 +03:00
EmelyanenkoK
d8dd75ec83
Limit account storage size ( #530 )
...
* Limit size of an account
* Bugfix
* Don't check size for special accounts
* Improve timeouts in collator and validator
Co-authored-by: SpyCheese <mikle98@yandex.ru>
2022-11-30 08:40:19 +03:00
SpyCheese
a4a3ea2b77
liteServer.getAccountStatePrunned method ( #534 )
2022-11-30 08:39:32 +03:00
SpyCheese
c7f06abfbc
Fix finding blocks by lt and ut in archive manager ( #536 )
2022-11-30 08:38:46 +03:00
SpyCheese
4714726f4a
Cache result of run_collate_query in ValidatorGroup
2022-11-25 09:49:04 +03:00
SpyCheese
1d42c38122
Move some constants to global config ( #484 )
2022-10-10 17:13:21 +03:00
SpyCheese
580884033b
Check limits in validate-query, check timeout in collator ( #469 )
2022-10-06 21:31:41 +03:00
SpyCheese
bb5bc6178c
Change recursion to loop in CellSlice
2022-09-21 11:04:40 +03:00
SpyCheese
2512f0287b
Tonlib method getShardBlockProof ( #465 )
...
* Tonlib method getShardBlockProof
* Clarify limit of result.size() in getShardBlockProof
2022-09-20 10:49:28 +03:00
EmelyanenkoK
8329a58994
Add GetPerfTimerStats ( #451 )
...
* Add getperfwarningtimeraverage query for validator-engine-console
* Fix for getperfwarningtimeraverage query
* getperftimerstats
* Add history max size: 1 hour
* PerfWarningTimer: move callback instead of copy
* PerfWarningTimer: fix move constructor bug
* PerfWarningTimer: fix bug: lifetime of the callback was greater than lifetime of the local variable 'manager' captured by reference
* Fix validate-query.cpp: 'manager' used after it was moved
* PerfWarningTimer: remove logs
* getperftimerstats: write to json file
* getperftimerstatsjson
Co-authored-by: legaii <jgates.ardux@gmail.com>
Co-authored-by: Ivan Siomash <106972486+legaii@users.noreply.github.com>
2022-09-10 12:57:13 +03:00
SpyCheese
be824e9649
Check is_applied in liteserver
2022-08-22 10:25:28 +03:00
SpyCheese
417c3bb640
More detailed validator session stats
2022-08-18 21:52:08 +03:00
SpyCheese
b3e6819f3f
Log validator session stats to file
2022-08-18 21:51:57 +03:00
SpyCheese
30ba32bef9
Fix validator session options hash; fix proto_version
2022-08-09 13:18:06 +03:00
Tsenilov Oleg
e30049930a
Enhance overlay stats output ( #386 )
...
* Expand overlay stats
* Add scope and peer broadcast errors to stats
* Add json output format
Co-authored-by: EmelyanenkoK <emelyanenko.kirill@gmail.com>
2022-06-07 16:24:26 +03:00
neodiX42
65e3177def
Fix windows validator-engine.exe runtime access violation error ( #387 )
...
* Fix runtime access violation error on Windows
2022-06-03 16:01:55 +03:00
EmelyanenkoK
845cbca1e5
Make asynchronous celldb interface ( #388 )
...
* Asynchronous load_cell in celldb
Co-authored-by: SpyCheese <mikle98@yandex.ru>
2022-06-01 10:03:50 +03:00
EmelyanenkoK
ca00f0ed91
Extended error notes for unacceptable external messages ( #383 )
...
* patch sendMessage
* Verbose error message for "sendMessage" LS query
* More verbose errors in external-message.cpp
Co-authored-by: dungeon-master-666 <dungeon666master@protonmail.com>
Co-authored-by: SpyCheese <mikle98@yandex.ru>
2022-05-24 21:21:58 +03:00
EmelyanenkoK
89b8717cf8
Persistent optimization ( #382 )
...
* State serialization consuming less RAM
* Move large-boc-serializer to crypto/vm, refactor code
Co-authored-by: SpyCheese <mikle98@yandex.ru>
2022-05-24 21:17:11 +03:00
SpyCheese
3b4166be69
Add logs in AsyncStateSerializer
2022-05-16 12:29:39 +03:00
EmelyanenkoK
c07394aab5
Optimization of persistent state serialization ( #364 )
...
* Fix double serialization of masterchain; increase sync_blocks_before
* Improve logging in DownloadState
* Write persistent state directly to file instead of a buffer
* Don't keep ref to masterchain state in AsyncStateSerializer
* Sparse state serialization over longer period
Co-authored-by: SpyCheese <mikle98@yandex.ru>
2022-05-15 17:51:24 +03:00
EmelyanenkoK
1e0b587023
Allow untrusted fecs after check ( #356 )
...
* Allow untrusted fecs after check
* FEC: save and resend incoming parts
Co-authored-by: OmicronTau <87443739+OmicronTau@users.noreply.github.com>
Co-authored-by: OmicronTau <omicron@ton.org>
2022-05-11 21:12:04 +03:00
EmelyanenkoK
0fbfc91965
Merge pull request #342 from SpyCheese/fix-node-init-timeout
...
Increase timeout for downloading persistent states and add logs
2022-05-06 11:40:51 +03:00
EmelyanenkoK
76c2764e7f
Sparse state serialization over time by randomized delay
2022-05-06 10:48:35 +03:00
Starlight Duck
3fee04e20a
Support libraries in LS and request+caching in TLC
2022-05-06 10:48:05 +03:00
OmicronTau
59fcd7cbd5
Deactivate accounts upon destruction in block
2022-05-06 10:44:44 +03:00
OmicronTau
1b480e39ba
Fix infinity max_gas_limit for get methods
2022-05-06 10:44:26 +03:00
OmicronTau
cb31a20206
Add methods to sign and import certificates
2022-05-06 10:42:49 +03:00
OmicronTau
3384d204d2
Add checks for external messages
2022-05-06 10:40:12 +03:00
OmicronTau
69d0472510
Add mempool messages cap
2022-05-06 10:33:00 +03:00