Roman Khimov
f5f58a7e91
keys: add simple LRU key cache for 1024 elements
...
The cost of Y calculation from X is comparable with signature check, so it
reduces witness check overhead by ~30% for cached keys and gives ~5% overall
boost in TPS.
2020-09-09 20:46:31 +03:00
Anna Shaleva
4fafed8411
go.mod: tidy
2020-07-14 16:21:38 +03:00
Roman Khimov
815c075112
consensus: update dbft, use millisecond-precision time, add CV reason
2020-07-11 19:54:50 +03:00
Anna Shaleva
8de0332107
*: use MaxTransactionsPerBlock from Policy native contract
...
part of #904
1. We now have MaxTransactionsPerBlock set in native Policy contract,
so this value should be used in (dbft).GetVerified method instead
of passing it as an argument.
2. Removed (dbft).WithTxPerBlock.
2. DBFT API has changed, so update it's version.
3. Removed MaxTransactionsPerBlock from node configuration, as we
have it set in native Policy contract.
2020-06-24 07:58:05 +03:00
Roman Khimov
fd1e672e74
update dbft to include CountFailed and RecoveryMessage changes
2020-06-01 17:56:05 +03:00
Evgenii Stratonikov
28f31633d0
go.mod: tidy
2020-05-27 11:48:52 +03:00
Roman Khimov
b04c8623c5
Merge pull request #925 from nspcc-dev/rpc-over-websocket
...
RPC over websocket
2020-05-06 12:52:58 +03:00
Roman Khimov
ec62edac68
rpc/server: add websockets support via '/ws' URL
2020-05-04 16:54:35 +03:00
Evgenii Stratonikov
905f5f3047
*: go mod tidy
2020-04-30 19:29:52 +03:00
Anna Shaleva
dbda721599
consensus.Block: removed unnecessary setters
...
As far as we have consensus context in NewBlockFromContext, we don't
need them anymore.
2020-04-27 17:59:56 +03:00
Anna Shaleva
6db4ca874d
consensus: replace NewBlock() with NewBlockFromContext(ctx *Context)
...
We have to set ConsensusData.PrimaryIndex field of Block, so this value
can be retrieved from consensus context.
2020-04-27 17:58:25 +03:00
Anna Shaleva
0de5cb1bde
core, consensus: nanoseconds-precision timestamp
...
Keep timestamp of consensus messages in nanoseconds-precision state
2020-04-27 17:57:32 +03:00
Anna Shaleva
aa554f0a9a
core: update block timestamp format
...
Changed block.Timestamp from uint32 to uint64
2020-04-27 17:56:44 +03:00
Evgenii Stratonikov
24ac001793
*: go mod tidy
...
Add `github.com/dgraph-io/badger` in go.mod .
2020-04-10 15:32:21 +03:00
Evgenii Stratonikov
fcc4877f43
go.mod: update boltdb to v1.3.4
...
Also import lib as declared in it's go.mod:
via `go.etcd.io/bbolt`.
2020-03-25 17:07:54 +03:00
Evgenii Stratonikov
386ff07054
*: go mod tidy
2020-03-10 12:55:41 +03:00
Roman Khimov
9b04623edf
go.mod: fix dbft version, previous commit was wiped during "merge"
...
It wasn't really a merge, but rather rebase and ff-push.
2020-03-04 19:32:15 +03:00
Roman Khimov
3af28e1de4
go.mod: update dbft to smth compatible with nspcc-dev/neo-go
2020-03-03 17:31:09 +03:00
Roman Khimov
e41d434a49
*: move all packages from CityOfZion to nspcc-dev
2020-03-03 17:21:42 +03:00
Roman Khimov
36773816d5
go.mod: update dbft with nspcc-dev/dbft#26
2020-02-19 14:46:51 +03:00
Roman Khimov
4299d1cf1b
update dbft package with nspcc-dev/dbft#25
2020-02-19 12:19:02 +03:00
Roman Khimov
d3badc3f97
consensus: log more like neo-cli, update dbft
2020-02-11 18:02:13 +03:00
Evgenii Stratonikov
8947f39a0d
go.sum: go mod tidy
2020-02-10 11:05:32 +03:00
Evgenii Stratonikov
3d99b10d5e
consensus: update dbft version
2020-01-30 13:57:21 +03:00
Evgenii Stratonikov
55d98ab19a
consensus: update keys from wallet after every block
2020-01-17 17:30:45 +03:00
Roman Khimov
e2fff3bb1d
keys: update to newer rfc6979 package
...
Fixes #592 .
2020-01-16 18:21:10 +03:00
Evgenii Stratonikov
4d56fde98a
consensus: update dbft version
2020-01-13 15:13:58 +03:00
Evgenii Stratonikov
07b88796fb
consensus: update dbft version
2019-12-13 11:28:57 +03:00
Evgenii Stratonikov
0e1621a0da
go.mod: update dbft and tidy
2019-12-09 15:03:38 +03:00
Evgenii Stratonikov
765c354793
consensus: return signed messages from recovery.Get*
2019-12-06 11:33:32 +03:00
Roman Khimov
c8aa061421
cli/wallet: use more secure way to read passwords
...
They were printed in plaintext, believe it or not. Also, `ssh/terminal` does
some proper magic to really read something from the terminal.
2019-12-03 20:04:52 +03:00
Evgenii Stratonikov
fdd5276d3e
network: plug in dBFT library
2019-11-27 10:57:22 +03:00
Vsevolod Brekelov
d374175170
monitoring: add prometheus monitoring
...
add init metrics service which uses prometheus;
add configuration for metrics service;
add monitoring metrics for blockchain,rpc,server;
2019-10-29 20:51:17 +03:00
Roman Khimov
c531dc0bde
network: add block queue
...
This one will replace blockCache in Blockchain itself as it can and should be
external from it. The idea is that we only feed successive blocks into the
Blockchain and it only stores valid proper Blockchain and nothing else.
2019-09-27 13:00:09 +03:00
Roman Khimov
aa0c765be9
go.mod/sum: update and tidy
2019-09-17 15:31:59 +03:00
Vsevolod Brekelov
bfe5fd538e
storage: add boltDB support
...
closes #335
2019-09-14 10:28:43 +03:00
Roman Khimov
e872b6b421
vm/cli: redo the whole thing using abiosoft/ishell
...
Adds history support, better editing and way better help system. Expand on
some helps while at it.
2019-09-10 23:31:06 +03:00
Vsevolod Brekelov
4f680703a4
storage: multiple DB support and Redis support
...
add config which closes #336
add redis db support
2019-09-10 17:22:21 +03:00
Roman Khimov
8db9d2a976
crypto: use mr-tron/base58 for base58
...
Use more fast and reliable implementation. Add some tests for our wrappers,
deduplicate code in PublicKey.Adress(). Fixes #355 .
2019-09-09 13:12:55 +03:00
Evgeniy Kulikov
78cf3e9c5f
Use our RFC6979 fork
...
- prepare fork
- update go-modules
- update dependencies
2019-08-27 13:07:02 +03:00
Evgeniy Kulikov
6ccb518ab0
Optimizations + some improvements ( #105 )
...
* Optimizations + some improvements
- optimized pkg/core/storage.HeaderHashes
- optimized pkg/rpc.performRequest (used json.Encoder)
- fixes for pkg/util.ReadVarUint and pkg/util.WriteVarUint
- optimized and fix fixed8 (Fixed8DecodeString / MarshalJSON) + tests
- optimized and fix uint160 (Bytes / Uint160DecodeString / Equal / MarshalJSON) + tests
- optimized and fix uint256 (Bytes / Equal / MarshalJSON) + tests
- preallocate for pkg/vm.buildStackOutput
- add go.mod / go.sum
* update version
2018-11-26 16:56:45 +01:00