Commit Graph

889 Commits

Author SHA1 Message Date
primal_concrete_sledge
fff6e4ffa5
fix/issue-4593_fix_closed_chan (#4603) 2022-07-01 20:59:52 +01:00
Alex Sharov
2415fecb26
--downloader.verfiy flag to verify once on startup (#4597)
* save

* save

* save

* save

* save

* save
2022-07-01 16:52:43 +06:00
Giulio rebuffo
33892ffd79
Fixed transaction on hive tests (#4590)
* try 1

* try 1

* fix now?

* Update accessors_chain.go

* Update accessors_chain.go

* added comments
2022-07-01 11:02:24 +02:00
Alex Sharov
c03d57356c
prevent downloading new snapshots after initial sync (#4585) 2022-06-30 22:35:44 +06:00
Giulio rebuffo
087105d1f3
lvh on invalid transition block (#4583) 2022-06-30 18:20:21 +02:00
Andrew Ashikhmin
7cd195117f
More robust quitting of PoW mining (#4574)
* isTrans -> cfg.blockBuilderParameters != nil

* More robust quitting of PoW mining
2022-06-29 17:39:12 +02:00
Alex Sharov
6add6ecd0e
Snapshots: new bsc hash #4578 2022-06-29 20:42:05 +06:00
Andrew Ashikhmin
8f86c5d615
Remove getNodeData experimental feature (#4559) 2022-06-29 18:23:00 +06:00
Giulio rebuffo
ed69bac065
Fixed in-memory execution hive tests (#4565)
* badBlockHalt

* fixed buidl

* lintl
2022-06-29 08:28:00 +06:00
Giulio rebuffo
aa7985341e
LVH support to memory overlay (#4555)
* fixed fcu

* fixed leak

* maybe now?

* wrote forkchoice
2022-06-28 17:46:24 +02:00
Andrew Ashikhmin
dc5d3ffaac
Revert "Switch from eth/66 to eth/67 (#4549)" (#4562)
This reverts commit 16e57aa8a2.
2022-06-28 13:42:35 +02:00
Andrew Ashikhmin
16e57aa8a2
Switch from eth/66 to eth/67 (#4549)
* Switch from eth/66 to eth/67

* Fix a compilation error

* Update erigon-lib

* Refresh erigon-lib
2022-06-28 10:12:48 +02:00
Alex Sharov
538b4fea6c
Snapshots: don't panic after too far reset (#4558)
* save

* save

* save

* save
2022-06-28 10:31:44 +06:00
Giulio rebuffo
588c2d4e36
Implemented side forks support (up to depth of 128). (#4514)
* side forks

* fixed stuff

* lint

* update go.mod and go.sum

* cmd

* added comment

* better validatePayload

* fixed empty payload sometimes

* support future side forks

* added crit error handle

* fix compile err

* lint
2022-06-27 15:59:54 +02:00
Alex Sharov
b9cb6d953e
Fix nil td (#4546)
* save

* save
2022-06-26 17:27:14 +06:00
Alex Sharov
afd07e5dee
--no-downloader flag support (#4545) 2022-06-26 17:13:32 +06:00
Alex Sharov
529682aa9d
New goerli snapshot (#4544) 2022-06-26 17:13:07 +06:00
primal_concrete_sledge
5e2f6bb2db
Fix/new eth filters (#4504)
* Add fixes to eth_newPendingTxFilter and others

* Fix tests

* Add test

* Add goroutines return on closed chans
2022-06-24 09:11:38 +01:00
Andrew Ashikhmin
8de7c5e41c
JSON parsing of safe & finalized (#4524) 2022-06-23 19:37:39 +02:00
Giulio rebuffo
7896fc60b6
fixed notifications (#4520) 2022-06-23 17:23:35 +02:00
Andrew Ashikhmin
0a527feddb
Send Engine API response after tx.Commit() even when useExternalTx (#4516)
* pendingPayloadStatus -> pendingPayloadHash

* Ensure that Engine API response is sent after tx.Commit() even when useExternalTx

* ProcessEngineApiResponse -> SendEngineApiResponse

* PayloadResponse -> PayloadStatus
2022-06-22 14:54:23 +02:00
Andrew Ashikhmin
18e5bf3bbf
Rework PR 4505 (#4511)
* Revert "Update chainConfig in the database (#4505)"

This reverts commit f38ab485e0.

* Only preserve config of unknown chains
2022-06-21 10:17:54 +02:00
Andrew Ashikhmin
daa84922d6
Commit transaction before responding on Engine API (#4506)
* Remove an unused interrupt value

* Remove sendErrResponse from safeAndFinalizedBlocksAreCanonical

* Clean up err handling

* startHandlingForkChoice returns response

* handleNewPayload returns response

* Commit transaction before responding on Engine API

* small fix

* Reply with SYNCING before long unwind

* schedulePoSDownload doesn't require requestStatus anymore
2022-06-20 23:03:17 +02:00
ledgerwatch
f38ab485e0
Update chainConfig in the database (#4505)
* Update genesis.go

* Remove the test

* Remove unnecessary code

Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-06-20 16:51:19 +01:00
Giulio rebuffo
7a2b575e56
Added memory execution (#4446)
* add

* added in memory execution draft

* func to state

* added functionality

* backend function for memory execution

* simplified stage state

* haltable stage execution

* added mod sum

* hd

* sl

* LOL

* LOL again

* need trace

* more logs

* added cleanup on fcu

* fcu

* mod

* bunch of prtln

* feed

* ops

* headers notify

* revert

* slightly more commented

* head

* nil block retire

* comments

* prevent clean

* corrected occasional panics

* fixed lint
2022-06-19 20:45:36 +01:00
ledgerwatch
64067a2b77
Debugging Engine API (#4488)
* defer tx rollback

* Add http.trace flag

* Fixed http.trace flag

* Fix lint

* Fix lint

* Delete unused tests

* Fix lint

* Fix lint

* Fix lint

* Fix lint

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-19 13:40:28 +01:00
ledgerwatch
93151f0ae6
[erigon2.2] Reduce allocations when replaying historical txs (#4460)
* [erigon2.2] Reduce allocations when replaying historical txs

* import new API, fix code

* Add hack decompress function

* update erigon-lib

* Fix hack

* Update to latest erigon-lib

* Fix reindexing

* Enable skip analysis for tracing calls too

* Enable for eth_getLogs

* Fix skip analysis

* Optimise

* Stop grpc server in the tests

* Print

* No panic on server stop

* Update to latest erigon-lib

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-17 13:40:49 +01:00
ledgerwatch
b1572a15d5
No reorgs when fork choice head points to a canonical header (#4466)
* No reorgs when fork choice head points to a canonical header

* Return immediately

* Fix sentry

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-16 16:07:09 +01:00
Giulio rebuffo
2e600316e3
Used memory batches from Erigon (#4469)
* modded summed

* deleted

* ops
2022-06-16 16:39:56 +02:00
ledgerwatch
21e3ebdab5
Update skip analysis, add more BSC snapshot hashes (#4448)
* Update skip analysis, add more BSC snapshot hashes

* Syntax fix

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-14 16:06:42 +01:00
Enrique Jose Avila Asapche
a5cb53d690
safe and finalized blocks from eth_getBlockByNumber (#4436)
* added getFinalzed and getSafe block num

* added rpc finalized and safe block num

* getting nums

* returning nil

* returning nil

* added to helper.go

* removed repeated code

* added functions into rpchelper

* returning err

* simplified

* using previous latest getter

* getting pending block with filter/

* Fix plain state block number

* Fix test

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-06-14 11:07:46 +03:00
Giulio rebuffo
1f36d76e09
Added Flush function to memory mutation (#4439) 2022-06-13 18:20:18 +02:00
Andrew Ashikhmin
eb497372ae
Interruptible PoS block building (#4438)
* Fix a typo

* BlockBuilder dummy

* BlockProposerParametersPOS -> BlockBuilderParameters

* Pass tx to MiningStep

* BlockBuilderFunc

* Interrupt in MiningExec Stage

* Draft implementation of BlockBuilder

* Fail back to empty header

* Add a comment

* cosmetic change

* Cosmetic change again

* It's not safe to pass transactions between goroutines
2022-06-13 15:43:09 +02:00
ledgerwatch
fd8adddce8
trace_filter implementation based on erigon 2 update 2 data (#4431)
* trace_filter implementation based on erigon 2 update 2 data

* Fix test compile, extract txNums

* Update to erigon-lib, add generic heap

* Fix getHeaderHash for RPC methods

* Missing files

* Skip tests

* Add reward traces

* Filter trace lint

* Reinstate filtering

* Print

* Print

* Fix

* Print

* Print txNums

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Remove prints

* Fix nil dereference

* Inclusive toBlock bound

* Print

* Print

* Hack

* remove some deps

* Fix lint

* Update erigon-lib

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-06-12 12:44:01 +01:00
ledgerwatch
8e3ac8a21c
Erigon2 upgrade 2 prototype (#4341)
* Erigon2 upgrade 2 prototype

* Latest erigon-lib

* Fixes

* Fix print

* Fix maxSpan

* Reduce maxSpan

* Remove duplicate joins

* TxNum

* Fix resuming

* first draft of history22

* Introduce historical reads

* Update to erigon-lib

* Update erigon-lib

* Update erigon-lib

* Fixes and tracing for checkChangeSets

* More trace

* Print account details

* fix getHeader

* Update to erigon-lib main

* Add tracer indices and event log indices

* Fix calltracer

* Fix calltracer

* Duplicate rpcdaemon into rpcdaemon22

* Fix tests

* Fix tests

* Fix tests

* Update to latest erigon-lib

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-06-10 16:18:43 +01:00
Krishna Upadhyaya
1e3c90ba80
Bor devnet option (#4428)
* bor mining testing

* Implemented bor-devent network

* Minor fixes

* use signer as validator

* remove unused spaces

* fix typo
2022-06-10 15:32:04 +07:00
Giulio rebuffo
f9024fed84
Removed annoying log (#4424) 2022-06-10 01:54:22 +02:00
ledgerwatch
f31abfe83b
Fixes for RPC notification log (#4410)
* Underflow fix

* Fix rpc notification to 0

Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-09 08:48:19 +07:00
Andrew Ashikhmin
644d25d25d
MergeForkBlock -> MergeNetsplitBlock (#4407) 2022-06-08 12:41:50 +02:00
ledgerwatch
2305d09d0d
Print blocks to TTD (#4405)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-08 10:26:42 +01:00
Alex Sharov
c97064173e
Open reset blocks migration: to delete .torrent files also #4404 (#4404) 2022-06-08 09:51:07 +07:00
Alex Sharov
d7d698f565
db migration to reset blocks (#4389)
* save

* save

* save

* save

* save

* save

* Update reset_blocks.go

* Not to remove too many tx lookup files

* Fix truncate blocks and add reset txlookup

* Fix bodies

* Fix nil pointer

Co-authored-by: ledgerwatch <akhounov@gmail.com>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-06-07 19:59:14 +01:00
ledgerwatch
e90bc39e04
Another anchor fix (#4395)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-07 09:42:58 +01:00
Alex Sharov
d655854b53
Snapshots: optimisticaly open at app startup (#4393)
* save

* save
2022-06-07 12:33:33 +07:00
Alex Sharov
e146b66e35
more usage of dirs object #4390 2022-06-07 11:54:04 +07:00
Alex Sharov
a53642b4bf
datadir.Dirs configuration object to group dir config (#4387) 2022-06-07 10:24:50 +07:00
ledgerwatch
b2f9b25300
For for overwritten anchor (#4379)
* For for overwritten anchor

* Switch to time types, log retry time in diagnostics

Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-06 18:23:41 +01:00
Andrew Ashikhmin
f3575ce46a
Fix MarkAllVerified (#4380) 2022-06-06 18:22:08 +01:00
ledgerwatch
4a5f97527b
Better diagnostic for stuck headers (#4372)
* More stuck headers diagnostics

* Temp print

* Remove temp print

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-05 15:00:13 +01:00
ledgerwatch
1231f8c21c
Add bor mainnet to embed (#4370)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-05 11:39:27 +01:00
ledgerwatch
7132a90613
Add bor mainnet snapshot hashes (#4368)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-05 14:36:26 +05:30
Enrique Jose Avila Asapche
9f1cc40c89
changed syncmode flag to snapshots flag (#4353)
* changed syncmode flag to snapshots flag

* using boolT

* Remove syncmode concept

* Add mumbai

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-05 07:33:55 +01:00
Alex Sharov
f838268e44
[wip] Snapshots: more runtime invariants check (#4350) 2022-06-03 18:50:01 +07:00
Enrique Jose Avila Asapche
49292346b3
Auto correcting sync mode instead of giving an error (#4337) 2022-06-03 09:38:10 +01:00
ledgerwatch
bcbb8bec65
Try to prevent double block retire (#4330)
* Try to prevent double block retire

* Remove print

* More careful setting of segmentsMax

* Print snapshots max

* Clean lists

* Print

* Use Reopen

* Fix

* Remove prints

Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-02 16:58:38 +01:00
Giulio rebuffo
f2be5a74a0
fixed it (#4336) 2022-06-02 15:54:11 +02:00
Enrique Jose Avila Asapche
bc21ab9d97
syncmode changes (#4334)
* log syncmode

* little comment

* ops

* calling log in correct place

* got rid of error instead we warn

* no return
2022-06-02 14:15:00 +01:00
ledgerwatch
b06b4b4c91
Prevent double retiring of the same interval, prevent hiding errors (#4325)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-02 08:49:24 +07:00
ledgerwatch
e0ac654da5
Better diagnostics for anchorQueue (#4326)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-01 23:45:06 +01:00
Giulio rebuffo
40230d5ab5
Refactor mining batch (#4322)
* refactooor

* updated ethdb

* more fixing

* more fixing

* more

* refactoor

* fixed mdbx crash
2022-06-01 22:48:42 +01:00
battlmonstr
0c5d1d64a3
observer: sentry candidates intake (#4321)
* sentry client: log connected peer info

* observer: unseen sentry peers report

* observer: refactoring node.go to node_utils

* observer: sentry candidates intake
2022-06-01 22:48:24 +01:00
Alex Sharov
e13e212288
rpc: add all blockReader methods (#4320)
* save

* save
2022-06-01 09:57:12 +07:00
Giulio rebuffo
576d736570
Added first prototype of mining mutation (#4266)
* added first prototype of mining mutation

* tests and lint

* fixed some stuff

* more progress

* bug fixing

* more refactoring

* account only modifications are allowed

* Added account trie memory calculation

* SeekBothRange adjustments

* more on both range

* finished

* lint

* fix account tries

* fixes

* more fixes to storage tries

* more fixes

* just saving progress

* better version

* more progress

* done please

* lint
2022-06-01 01:26:08 +02:00
ledgerwatch
cbc5729aa1
Fix and expand header downloader diagnostics (#4319)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-05-31 20:24:45 +01:00
ledgerwatch
0680671df9
Revert "Warn not error when body is missing (#4309)" (#4311)
This reverts commit 85814cacc5.
2022-05-30 18:31:47 +01:00
ledgerwatch
85814cacc5
Warn not error when body is missing (#4309)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-05-30 16:23:57 +01:00
Alex Sharov
955c669d21
Group few sync configs (#4303)
* save

* save
2022-05-30 17:08:49 +07:00
Alex Sharov
0795bcb865
integration: validate syncmode flag (#4300) 2022-05-30 09:59:38 +07:00
Alex Sharov
815119525a
reduce mem usage on building txs indices (#4299) 2022-05-30 09:33:48 +07:00
ledgerwatch
438c3933af
Fix invalidation of anchors (#4292)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-05-28 17:33:27 +01:00
Andrew Ashikhmin
0c76286509
Add rules to AsMessage to vet transaction types (#4276)
* Add rules to AsMessage to vet transaction types

* Fix TestState
2022-05-26 18:20:34 +02:00
Alex Sharov
6eb10ba9a8
Use ETL to fill kv.HeaderNumber from snapshots (#4272)
* merge devel

* save
2022-05-26 21:41:05 +07:00
leonardchinonso
3102a04d7f
Draft PR for the devnet automation (#4057)
* Draft PR for the devnet automation

* Committing to save for later edit

* Finished creating shells, to test

* Changes:
* Added a shell for picking eth commands
* Implemented erigon node running with the --http flag to save processes
* Shell commands for get-balance and send-tx implemented
TODO:
* Make UX more friendly by adding start, stop and exit commands
* Add progress bar to show wait in progress
* Add flag or input to enable mining option for erigon node
* Implemented stress tests for other eth methods

* Experimenting

* little clean up

* lint

* Transitioned to static runs and tests from shell

* Finished stress test methods

* Rendering fixes

* save

* Cleanup

* Fixed lint

* Still fixing lint

* Removed args append ineffect

* Removed println in genesis init.go

* Removed println in genesis init.go

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Enrique Avila <eavilaasapche@gmail.com>
2022-05-26 13:08:25 +01:00
Andrew Ashikhmin
86de64a2a3
TangerineWhistle instead of EIP150 & SpuriousDragon instead of EIP155/158 (#4273)
* EIP150Block -> TangerineWhistleBlock

* Merge EIP158Block into EIP155Block

* EIP155Block -> SpuriousDragonBlock
2022-05-26 12:08:59 +02:00
Alex Sharov
66248c4bfb
Torrent: verify all files (#4270) 2022-05-26 12:27:44 +07:00
battlmonstr
8a47a7ce33
sentry: PeerById method (#4260) 2022-05-26 10:53:23 +07:00
battlmonstr
6b1f91407d
sentry: multi sentry client refactoring (#4265) 2022-05-26 10:45:35 +07:00
Alex Sharov
fc1a37e6dc
create turbo/services pkg (#4269) 2022-05-26 10:31:06 +07:00
Enrique Jose Avila Asapche
124e004bd5
fixed stuck dev chain (#4261) 2022-05-25 19:49:26 +07:00
Alex Sharov
60ba14e2c7
bsc snap hashes to 17.5M #4249 2022-05-24 13:32:54 +07:00
Alex Sharov
52d6f1d551
kv_mdbx: atomic closed flag #464 (#4247) 2022-05-24 12:24:20 +07:00
Alex Sharov
31e94803dc
SnapshotIndex: Add more context to panic #4245 2022-05-24 11:00:55 +07:00
battlmonstr
2da927b74a
trie (#4236): skip TestIHCursor until it is fixed (#4237) 2022-05-23 13:01:04 +02:00
ledgerwatch
8ea2bb55d0
Prevent deletion of extra block worth of tx lookup records when pruning (#4232)
* Print

* Prevent underflow, return 0 block if tx lookup failed

* Return nil receipt for 0 block

* Update to main erigon-lib

* Fix other places

* Fix other places

* Comment

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-05-22 20:35:02 +01:00
ledgerwatch
9dc7067e9c
Fix snapshot merge and anchor removal (#4228)
* Print retire

* Print

* Print

* Print

* Print

* Not fail when block is not found

* Remove prints

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-05-22 11:08:03 +01:00
ledgerwatch
6974a98aca
Clean anchors, forward sort of headers (#4225)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-05-21 18:00:26 +01:00
ledgerwatch
e6cb086c90
More header download diagnostics (#4224)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-05-21 14:49:08 +01:00
ledgerwatch
803bfff67e
Clean headers pointers when removing links (#4222)
* Clean headers pointers when removing links

* Replace the lock

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-05-21 08:59:30 +01:00
Giulio rebuffo
ea01c8e5b3
fixed kiln bug (#4221) 2022-05-21 10:33:00 +07:00
Alex Sharov
b1b5a319e1
It's safe now to open snapshots at app start (#4216) 2022-05-20 14:46:04 +07:00
Alex Sharov
7ecdf51d92
methods to read single txn by txnID (#4215) 2022-05-20 14:12:12 +07:00
Alex Sharov
ada46b0344
allow snap sync for mumbai chain (#4208)
* save

* mumbai
2022-05-19 19:31:02 +07:00
Alex Sharov
d9ed307807
allow --syncmode=snap for bor-mainnnet #4206 2022-05-19 18:54:50 +07:00
Alex Sharov
a95d86a99f
allow --syncmode=snap for bor-mainnnet (#4206)
* save

* save
2022-05-19 18:51:05 +07:00
Alex Sharov
726ef081ce
option to disable runtime.ReadMemStats (#4200) 2022-05-19 11:48:07 +07:00
Alex Sharov
64508a7d4e
Snap: call AddHeadersFromSnapshot only at initialCycle (#4198) 2022-05-19 10:38:53 +07:00
ledgerwatch
e40332bdd8
Simplify skeleton requests, limit bor spanCache, more fine grained locking in HeaderDownload (#4194)
* Simplify skeleton requests

* Limit bor cache size

* In the middle of changing lists

* Fix

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-05-18 17:16:37 +01:00
ledgerwatch
ec08a284a6
Reduce insertQueue usage, throttle Skeleton requests (#4185)
* Reduce insertQueue usage, throttle Skeleton requests

* Cleanup

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-05-17 19:31:17 +01:00
Håvard Anda Estensen
0a75065e7a
Use go:build lines and remove obsolete +build lines (#4175) 2022-05-17 14:46:53 +07:00
Alex Sharov
4e7807251a
Ensure snapshotDir not created by accident (#4164)
* save

* save

* save
2022-05-17 09:40:45 +07:00