Anna Shaleva
6b4dd5703e
config: unify BasicService config within existing services
...
There are no changes visible from the user side (at least for those
users who doesn't put Prometheus's or pprof's port in quotes), just
internal refactoring. From now and on, BasicService configuration is
used by RPC server config, TLS for RPC server, pprof and Prometheus.
2022-12-06 16:35:09 +03:00
Roman Khimov
d6b99a9a27
Merge pull request #2831 from nspcc-dev/loglevel-config
...
LogLevel config
2022-12-06 13:35:59 +07:00
Roman Khimov
2e1b502463
cli: make the node use new logging level on SIGHUP
...
Fixes #2794 .
2022-12-05 15:45:42 +03:00
Roman Khimov
cceb044a02
config: add LogLevel option to control logging level
...
And update zap, because the old version doesn't have zapcore.ParseLevel().
2022-12-05 14:58:16 +03:00
Roman Khimov
85b69141f7
Merge pull request #2830 from nspcc-dev/bump-aspid-again
...
config: move Aspidochelone fork height for NeoFS mainnet again
2022-12-05 14:48:54 +07:00
Roman Khimov
5ffe04269f
config: move Aspidochelone fork height for NeoFS mainnet again
2022-12-05 10:41:43 +03:00
Roman Khimov
b7518423d4
Merge pull request #2829 from nspcc-dev/ms-per-block
...
TimePerBlock config
2022-12-05 14:27:55 +07:00
Roman Khimov
4972def311
config: use 100ms for unit_testnet.single
...
I do see some reduced testing time for cli components with this setting even
though it doesn't affect the overall time for me. Maybe it'll be beneficial in
some cases. Refs. #2379 .
2022-12-02 19:52:14 +03:00
Roman Khimov
af66a0441e
config: update configuration files to use TimePerBlock
...
Everything works like charm after this.
2022-12-02 19:52:14 +03:00
Roman Khimov
c2adbf768b
config: add TimePerBlock to replace SecondsPerBlock
...
It's more generic and convenient than MillisecondsPerBlock. This setting is
made in backwards-compatible fashion, but it'll override SecondsPerBlock if
both are used. Configurations are specifically not changed here, it's
important to check compatibility.
Fixes #2675 .
2022-12-02 19:52:14 +03:00
Roman Khimov
a654396150
Merge pull request #2702 from nspcc-dev/management-id-hash
...
Store ID->hash map in the ContractManagement
2022-12-02 23:48:44 +07:00
Roman Khimov
d909cab4a4
rpcclient/management: add new methods
2022-12-02 10:57:05 +03:00
Roman Khimov
4ce968e4d0
*: update interops, add tests for new management methods
2022-12-02 10:57:05 +03:00
Roman Khimov
cb5c18dc73
interop: add getContractByID and getContractHashes to management
2022-12-02 10:54:45 +03:00
Roman Khimov
4a626f505e
core: drop old STContractID data
...
We have it in the ContractManagement now.
2022-12-02 10:54:45 +03:00
Roman Khimov
970862765d
native: implement management.getContractById
...
Follow neo-project/neo#2807 . Notice that this data is not cached, our previous
implementation wasn't too and it shouldn't be a problem (not on the hot path).
2022-12-02 10:21:08 +03:00
Roman Khimov
6c68da7a52
rpcsrv: add block 20 hash comparison test
...
Makes updating it somewhat easier.
2022-12-02 10:21:08 +03:00
Roman Khimov
f6a9969fa8
Merge pull request #2770 from nspcc-dev/push-bool
...
vm: add PUSHT and PUSHF opcodes
2022-12-02 14:20:11 +07:00
Roman Khimov
389bdfd1b6
Merge pull request #2719 from nspcc-dev/eval
...
runtime: implement System.Runtime.LoadScript, fix #2701
2022-12-02 14:08:40 +07:00
Roman Khimov
93cec0bba5
Merge pull request #2786 from nspcc-dev/simplify-getversion
...
Simplify result.Version
2022-12-02 14:07:55 +07:00
Roman Khimov
3ef66239a8
Merge pull request #2814 from nspcc-dev/startup-time
...
Optimize startup time and memory usage
2022-12-02 14:06:23 +07:00
Anna Shaleva
2b140631f4
rpc: adjust Boolean handling in ExpandArrayIntoScript
...
Use new PUSHT and PUSHF opcodes for Boolean scparameter.
2022-12-02 10:02:33 +03:00
Anna Shaleva
1250e82c2a
vm: add PUSHT and PUSHF opcodes
...
Port https://github.com/neo-project/neo-vm/pull/497 .
2022-12-02 10:02:33 +03:00
Roman Khimov
6912695b9d
Merge pull request #2826 from nspcc-dev/check-for-max-block-sysfee
...
core: filter out txes with system fee > MaxBlockSystemFee
2022-11-29 14:57:10 +07:00
Roman Khimov
6847e1760c
core: filter out txes with system fee > MaxBlockSystemFee
...
They can stay in the memory pool forever because consensus process will never
accept these transactions (and maybe even block consensus process at all).
2022-11-29 10:31:00 +03:00
Roman Khimov
4ca478dfc4
Merge pull request #2824 from nspcc-dev/fix-load
...
core, vm: improve script invocation errors
2022-11-28 22:10:21 +07:00
Anna Shaleva
6d3cc0f7e7
core: extend error text for storage context in dynamic script
2022-11-28 17:17:36 +03:00
Anna Shaleva
0ceae612c6
vm: improve failed SYSCALL logging
...
For better user experience.
2022-11-28 17:16:27 +03:00
Roman Khimov
07e32e221d
*: update interops, add System.Runtime.LoadScript wrapper check
2022-11-25 15:16:27 +03:00
Roman Khimov
de2de986a7
interop: add runtime.LoadScript
2022-11-25 15:11:49 +03:00
Roman Khimov
4e26f4b26e
runtime: implement System.Runtime.LoadScript, fix #2701
2022-11-25 15:11:49 +03:00
Roman Khimov
1c38b45074
core: don't always store all hashes in memory
...
We're paging these hashes, so we need a previous full page and a current one
plus some cache for various requests. Storing 1M of hashes is 32M of memory
and it grows quickly. It also seriously affects node startup time, most of
what it's doing is reading these hashes, the longer the chain the more time it
needs to do that.
Notice that this doesn't change the underlying DB scheme in any way.
2022-11-25 14:30:51 +03:00
Roman Khimov
0ad6e295ea
core: make GetHeaderHash accept uint32
...
It should've always been this way because block indexes are uint32.
2022-11-25 14:30:51 +03:00
Roman Khimov
16db4746cc
core: drop another useless genesis-specific header handling branch
...
If we only have genesis block (or <2000 headers) then we might as well use
generic logic below with zero targetHash because genesis block has zero
PrevHash (and its hash will naturally be the last on the chain going
backwards).
2022-11-25 13:08:03 +03:00
Roman Khimov
83e2ca054f
core: simplify header hash list restoration logic
...
We don't care about header, we only need hashes here.
2022-11-25 13:08:03 +03:00
Roman Khimov
ff284d5d5c
core: remove genesis-specific header hash logic from init
...
The code below will do the same thing (via CreateGenesisBlock, but it doesn't
matter) generically, so this branch is useless.
2022-11-25 13:08:03 +03:00
Roman Khimov
a43a87675d
Merge pull request #2823 from nspcc-dev/bump-mainnet-neofs-fork-block
...
config: the network is past 2.7M non-upgraded
2022-11-24 15:08:41 +07:00
Roman Khimov
7d041aea56
config: the network is past 2.7M non-upgraded
...
Bump the fork block again.
2022-11-24 10:57:45 +03:00
Roman Khimov
92dfec61c9
Merge pull request #2822 from nspcc-dev/0997
...
CHANGELOG: release 0.99.7
2022-11-23 20:30:36 +07:00
Roman Khimov
f10311f974
CHANGELOG: release 0.99.7
2022-11-23 16:21:51 +03:00
Roman Khimov
3ac76c319d
Merge pull request #2821 from nspcc-dev/improve-wsclient-handshake-error
...
Improve wsclient handshake error
2022-11-23 18:40:06 +07:00
Roman Khimov
327dfb8dbf
rpcsrv: add wsclient error message test for #2818
...
Now it can be done easily.
2022-11-23 12:24:20 +03:00
Roman Khimov
2591c39500
rpcsrv: make websocket client limit configurable
2022-11-23 12:19:49 +03:00
Roman Khimov
fb09670fd1
rpcclient: extract more detailed server-side on WS connection problem
...
If available. Fixes #2818 .
2022-11-23 12:19:35 +03:00
Roman Khimov
ab0b23625b
Merge pull request #2817 from nspcc-dev/always-return-hash-vub-from-sender
...
Some actor/waiter interaction fixes
2022-11-23 14:37:38 +07:00
Roman Khimov
fd04b2befd
actor: don't abort waiter on "already exists" error
...
It can happen in many cases of distributed tx generation/submission, we can
just wait normally in this case and there will be some proper result.
2022-11-23 10:07:37 +03:00
Roman Khimov
66ddeccdad
Merge pull request #2813 from nspcc-dev/fix-state-reset
...
core: fix broken state reset
2022-11-23 13:43:42 +07:00
Anna Shaleva
f3ef2890f0
core: check headers at the proper state on state reset
...
And fix the comment along the way.
2022-11-23 09:16:33 +03:00
Roman Khimov
cd6bb68246
actor: check for tx after the subscription in wsWaiter, fix #2805
...
Don't wait for VUB block, solve this race immediately.
2022-11-22 17:28:55 +03:00
Roman Khimov
c95d140113
rpcclient: always return tx hash from sendrawtransaction
...
Let upper-layer APIs like actor.Send() return it as well. Server can return
"already exists" which is an error and yet at the same time a very special
one, in many cases it means we can proceed with waiting for the TX to settle.
2022-11-22 15:18:37 +03:00