Mathias LANG
Mathias LANG
The first test in `NetworkDiscovery` uses the return of `getNodeInfo`: https://github.com/bpfkorea/agora/blob/81e348264c54ce951b9b09a73f096426c271d6b9/source/agora/test/NetworkDiscovery.d#L32-L33 This returns the set of **known** addresses which doesn't necessarily includes addresses we are **connected** to. https://github.com/bpfkorea/agora/blob/81e348264c54ce951b9b09a73f096426c271d6b9/source/agora/network/Manager.d#L1036-L1043 For example:...
The state of serialization in Agora is as follow: - Blocks are serialized to binary and stored on disk via [BlockStorage](https://github.com/bosagora/agora/blob/164deb6e0f2db03aa4214ed71b2c714e4d01ffb6/source/agora/node/BlockStorage.d) This binary serialization is there because we want to...
``` Unittesting agora.test.SlashingMisbehavingValidator.. terminate called after throwing an instance of 'std::runtime_error' what(): moved to a bad state (ballot protocol) ./ci/run.sh: line 21: 5753 Aborted (core dumped) ./build/agora-unittests ``` Witnessed on...
I'm seeing unittest getting stuck and just timing out. Example from recently: ``` Unittesting agora.test.InvalidBlockSigByzantine (took 4 secs, 398 ms, 642 μs, and 2 hnsecs) Unittesting agora.test.GossipProtocol (took 5 secs,...
``` 0 agora-unittests 0x00000001056caeab _D4core7runtime9backtraceFNbPPviZi + 75 1 agora-unittests 0x00000001056cae3a _D4core7runtime18runModuleUnitTestsUZ19unittestSegvHandlerUNbiPSQCk3sys5posix6signal9siginfo_tPvZv + 58 2 libsystem_platform.dylib 0x00007fff71c2f5fd _sigtramp + 29 3 agora-unittests 0x00000001049e410a _D5agora4node8FullNodeQj9addBlocksMFNfAxSQBn9consensus4data5BlockQgAxSQCqQBdQw12PreImageInfoQoZ__T9__lambda6TxQBpZQqMFNbNfxQCcZb + 26 4 agora-unittests 0x00000001049df84b _D3std9algorithm9iteration__T4eachS5agora4node8FullNodeQj9addBlocksMFNfAxSQBn9consensus4data5BlockQgAxSQCqQBdQw12PreImageInfoQoZ9__lambda6Z__TQEjTQBuZQErMFNbNfKQCiZEQGh8typecons__T4FlagVAyaa4_65616368ZQv +...
We're seeing increased memory usage on the live servers, so much so that the OOM killer is triggering from time to time. Those servers have 32GBs of RAM, 2 instances...
Those config options do the following: - `min_listeners`: Minimum number of non-validating nodes to connect to before discovery is considered complete - `max_listeners`: Maximum number of non-validating nodes to connect...
Some APIs can return a lot of data, which means we usually end up limiting them to a certain value (e.g. `getBlocksFrom`). We should ensure/check the following: - Whether we...
Currently, Agora depends transitively on OpenSSL 1.1.1. This was problematic when Alpine decided suddenly to switch the default OpenSSL to v3, breaking our code. We ended up using `openssl1.1-compat-dev` and...
Currently, we have the following configuration item: https://github.com/bosagora/agora/blob/8ed2d6dd2fd461c1fd3652e46f08f739a6bc9827/source/agora/node/Config.d#L329-L330 As part of the validator config. However, there are a few problems with this: - Most nodes will end up needing the...