chore: update helio and improve our stack overflow resiliency (#4349)

1. Run CI/Regression tests with HELIO_STACK_CHECK=4096.
   This will crash if a fiber stack usage goes below this limit.
2. Increase shard queue stack size to 64KB
3. Increase fiber stack size to 40KB on Debug builds.
4. Updated helio has some changes around the TLS socket code.
   In addition we add a helper script to generate self-signed certificates helpful for local development work.

Signed-off-by: Roman Gershman <roman@dragonflydb.io>
This commit is contained in:
Roman Gershman 2024-12-23 10:13:45 +02:00 committed by GitHub
parent 28848d0be2
commit 95cd9dfb4c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 108 additions and 9 deletions

View file

@ -667,7 +667,6 @@ void Transaction::RunCallback(EngineShard* shard) {
DCHECK_EQ(shard, EngineShard::tlocal());
RunnableResult result;
auto& db_slice = GetDbSlice(shard->shard_id());
try {
result = (*cb_ptr_)(this, shard);
@ -691,6 +690,7 @@ void Transaction::RunCallback(EngineShard* shard) {
LOG(FATAL) << "Unexpected exception " << e.what();
}
auto& db_slice = GetDbSlice(shard->shard_id());
db_slice.OnCbFinish();
// Handle result flags to alter behaviour.