Vsevolod Stakhov
958837d1cd
[Minor] Make log message less confusing
1 mês atrás
Vsevolod Stakhov
004e512835
[Fix] Check nconns when firing the final termination event
Issue: #4941
1 mês atrás
Vsevolod Stakhov
14c13854d3
[Rework] Further types conversion (no functional changes)
2 meses atrás
Vsevolod Stakhov
6b2b416718
[Rework] Remove some of the GLib types in lieu of standard ones
This types have constant conflicts with the system ones especially on OSX.
2 meses atrás
Vsevolod Stakhov
3e29be1422
[Fix] Another try to fix setproctitle
7 meses atrás
Vsevolod Stakhov
1adcfb1e23
[Feature] Use backward-cpp instead of manual libunwind stuff
9 meses atrás
Vsevolod Stakhov
89f2c5d327
[Minor] Use a more standard way to initialize libunwind
9 meses atrás
Linus Nordberg
557597166e
Update src/libserver/worker_util.c
Co-authored-by: Vsevolod Stakhov <vsevolod@rspamd.com>
9 meses atrás
Linus Nordberg
865705f043
Update src/libserver/worker_util.c
Co-authored-by: Vsevolod Stakhov <vsevolod@rspamd.com>
9 meses atrás
Linus Nordberg
3744f8326e
[Fix] Correct format string for unw_word_t
On x86_64 unw_word_t is uint64_t.
NOTE: Possibly incorrect for !x86_64.
9 meses atrás
Vsevolod Stakhov
96db4ae5ce
[Minor] Support `backtrace` where libunwind is not supported
9 meses atrás
Vsevolod Stakhov
537a7180a0
[Rework] Use clang-format to unify formatting in all sources
No meaningful changes.
10 meses atrás
Vsevolod Stakhov
92e51ab7a9
[Minor] Deduplicate code
1 ano atrás
Vsevolod Stakhov
425813061c
[Minor] Restore non-blocking semantics for the control socket to avoid deadlocks
XXX: it might be osx specific
1 ano atrás
Vsevolod Stakhov
a18c2f7c4b
[Minor] Plug memory leak for sigaltstack
1 ano atrás
Vsevolod Stakhov
b1d1a3c45e
[Rework] Use blocking socket for IPC between main and workers
There are no reasons why control pipes are blocking: the messages
there are rare and are strictly bounded by command sizes, so if we block
on some pipe, it is ok, as we still poll that for all operations.
It is also impossible to block on writing in normal conditions.
And if the conditions are not normal, e.g. a worker is unresponsive, then
we can safely think that the non-blocking behaviour as it is implemented
currently will not make things better, as it would lead to incomplete
reads/writes that are not handled anyhow and are totally broken from the
beginning.
1 ano atrás
Vsevolod Stakhov
0eabbc4492
[Minor] Use seqpacket for control pipes
1 ano atrás
Vsevolod Stakhov
ff6390071d
[Rework] Store the current worker, so other libraries could use this information
1 ano atrás
Vsevolod Stakhov
ec85b5f367
[Minor] Remove priorities from idempotent filters
1 ano atrás
Vsevolod Stakhov
e49a9382be
[Minor] Properly print top symbols by timeout
1 ano atrás
Vsevolod Stakhov
bfd6f0dba6
[Minor] Add utility function for task timeouts
1 ano atrás
Josh Soref
2b8e6958f4
Spelling (#4086)
[Rework] Massive spelling fix from @jsoref
2 anos atrás
Vsevolod Stakhov
bc488cd48b
[Minor] Remove obsolete WITH_HIREDIS define
2 anos atrás
Vsevolod Stakhov
1f73de6e10
[Minor] Do not refork old workers that are due to be terminated
2 anos atrás
Vsevolod Stakhov
1cf0d5687b
[Fix] Rework metrics handling
Issue: #3754
3 anos atrás
Manuel Rüger
5a355fb7f5
Implement an endpoint for OpenMetrics
Now /metrics provides an endpoint that is openmetrics compatible.
3 anos atrás
Vsevolod Stakhov
13d60df725
[Minor] Try to silence intentional leak for sigaltstack
3 anos atrás
Vsevolod Stakhov
7604819ab9
[Minor] Switch to buffered IO
3 anos atrás
Vsevolod Stakhov
25086ab2c3
[Minor] Show all listening configurations
3 anos atrás
Vsevolod Stakhov
8262bfa73f
[Minor] Another try to fix reuseport damage
3 anos atrás
Vsevolod Stakhov
4f72ad9744
[Fix] Fix multiple listen configuration
3 anos atrás
Vsevolod Stakhov
4241a6d65d
[Minor] Fix the previous commit (sync main and children)
3 anos atrás
Vsevolod Stakhov
a355874d09
[Fix] Disable reuseport for TCP sockets as it causes too many troubles
3 anos atrás
Vsevolod Stakhov
a5bd97a363
[Minor] Add leak explanation
3 anos atrás
Vsevolod Stakhov
f0aa0d1c69
[Minor] Fix format string
4 anos atrás
Vsevolod Stakhov
f6b8d1a2fe
[Rework] Close listen sockets in main after fork
4 anos atrás
Vsevolod Stakhov
980d8b7d6b
[Minor] Explicitly specify af for socketpair
4 anos atrás
Vsevolod Stakhov
5dac1cff96
[Minor] REUSEPORT is broken everywhere but Linux
4 anos atrás
Vsevolod Stakhov
9f292ddb10
[Minor] Fix some error reporting
4 anos atrás
Vsevolod Stakhov
903111c6cc
[Project] Do not listen sockets in the main process
4 anos atrás
Vsevolod Stakhov
ae6f563623
[Project] Preliminary usage of the reuseport
4 anos atrás
Vsevolod Stakhov
488f72bad4
[Minor] Add flags to listen socket creation
4 anos atrás
Vsevolod Stakhov
45f223de8f
[Minor] Close sockets that do not belong to a current worker
4 anos atrás
Vsevolod Stakhov
0e1e5111e3
[Minor] Do not use signalfd - it is totally broken in libev
4 anos atrás
Vsevolod Stakhov
856a786462
[Fix] Try hard to deal with ghost workers
4 anos atrás
Vsevolod Stakhov
a2d93ce101
[Minor] Reduce log noise
4 anos atrás
Vsevolod Stakhov
64205e24d4
[Rework] Re cache: Load hyperscan early
4 anos atrás
Vsevolod Stakhov
41e28d1148
[Rework] Further project structure reorganisation
4 anos atrás
Vsevolod Stakhov
3424122c9d
[Rework] Logger: Fix issues found so far
4 anos atrás
Vsevolod Stakhov
3ced568c32
[Minor] Implement preliminary termination for hs_helper
4 anos atrás