Vsevolod Stakhov
958837d1cd
[Minor] Make log message less confusing
vor 1 Monat
Vsevolod Stakhov
004e512835
[Fix] Check nconns when firing the final termination event
Issue: #4941
vor 1 Monat
Vsevolod Stakhov
14c13854d3
[Rework] Further types conversion (no functional changes)
vor 3 Monaten
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.
vor 3 Monaten
Vsevolod Stakhov
3e29be1422
[Fix] Another try to fix setproctitle
vor 7 Monaten
Vsevolod Stakhov
1adcfb1e23
[Feature] Use backward-cpp instead of manual libunwind stuff
vor 9 Monaten
Vsevolod Stakhov
89f2c5d327
[Minor] Use a more standard way to initialize libunwind
vor 9 Monaten
Linus Nordberg
557597166e
Update src/libserver/worker_util.c
Co-authored-by: Vsevolod Stakhov <vsevolod@rspamd.com>
vor 9 Monaten
Linus Nordberg
865705f043
Update src/libserver/worker_util.c
Co-authored-by: Vsevolod Stakhov <vsevolod@rspamd.com>
vor 9 Monaten
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.
vor 9 Monaten
Vsevolod Stakhov
96db4ae5ce
[Minor] Support `backtrace` where libunwind is not supported
vor 9 Monaten
Vsevolod Stakhov
537a7180a0
[Rework] Use clang-format to unify formatting in all sources
No meaningful changes.
vor 11 Monaten
Vsevolod Stakhov
92e51ab7a9
[Minor] Deduplicate code
vor 1 Jahr
Vsevolod Stakhov
425813061c
[Minor] Restore non-blocking semantics for the control socket to avoid deadlocks
XXX: it might be osx specific
vor 1 Jahr
Vsevolod Stakhov
a18c2f7c4b
[Minor] Plug memory leak for sigaltstack
vor 1 Jahr
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.
vor 1 Jahr
Vsevolod Stakhov
0eabbc4492
[Minor] Use seqpacket for control pipes
vor 1 Jahr
Vsevolod Stakhov
ff6390071d
[Rework] Store the current worker, so other libraries could use this information
vor 1 Jahr
Vsevolod Stakhov
ec85b5f367
[Minor] Remove priorities from idempotent filters
vor 1 Jahr
Vsevolod Stakhov
e49a9382be
[Minor] Properly print top symbols by timeout
vor 1 Jahr
Vsevolod Stakhov
bfd6f0dba6
[Minor] Add utility function for task timeouts
vor 1 Jahr
Josh Soref
2b8e6958f4
Spelling (#4086)
[Rework] Massive spelling fix from @jsoref
vor 2 Jahren
Vsevolod Stakhov
bc488cd48b
[Minor] Remove obsolete WITH_HIREDIS define
vor 2 Jahren
Vsevolod Stakhov
1f73de6e10
[Minor] Do not refork old workers that are due to be terminated
vor 2 Jahren
Vsevolod Stakhov
1cf0d5687b
[Fix] Rework metrics handling
Issue: #3754
vor 3 Jahren
Manuel Rüger
5a355fb7f5
Implement an endpoint for OpenMetrics
Now /metrics provides an endpoint that is openmetrics compatible.
vor 3 Jahren
Vsevolod Stakhov
13d60df725
[Minor] Try to silence intentional leak for sigaltstack
vor 3 Jahren
Vsevolod Stakhov
7604819ab9
[Minor] Switch to buffered IO
vor 3 Jahren
Vsevolod Stakhov
25086ab2c3
[Minor] Show all listening configurations
vor 3 Jahren
Vsevolod Stakhov
8262bfa73f
[Minor] Another try to fix reuseport damage
vor 3 Jahren
Vsevolod Stakhov
4f72ad9744
[Fix] Fix multiple listen configuration
vor 3 Jahren
Vsevolod Stakhov
4241a6d65d
[Minor] Fix the previous commit (sync main and children)
vor 3 Jahren
Vsevolod Stakhov
a355874d09
[Fix] Disable reuseport for TCP sockets as it causes too many troubles
vor 3 Jahren
Vsevolod Stakhov
a5bd97a363
[Minor] Add leak explanation
vor 3 Jahren
Vsevolod Stakhov
f0aa0d1c69
[Minor] Fix format string
vor 4 Jahren
Vsevolod Stakhov
f6b8d1a2fe
[Rework] Close listen sockets in main after fork
vor 4 Jahren
Vsevolod Stakhov
980d8b7d6b
[Minor] Explicitly specify af for socketpair
vor 4 Jahren
Vsevolod Stakhov
5dac1cff96
[Minor] REUSEPORT is broken everywhere but Linux
vor 4 Jahren
Vsevolod Stakhov
9f292ddb10
[Minor] Fix some error reporting
vor 4 Jahren
Vsevolod Stakhov
903111c6cc
[Project] Do not listen sockets in the main process
vor 4 Jahren
Vsevolod Stakhov
ae6f563623
[Project] Preliminary usage of the reuseport
vor 4 Jahren
Vsevolod Stakhov
488f72bad4
[Minor] Add flags to listen socket creation
vor 4 Jahren
Vsevolod Stakhov
45f223de8f
[Minor] Close sockets that do not belong to a current worker
vor 4 Jahren
Vsevolod Stakhov
0e1e5111e3
[Minor] Do not use signalfd - it is totally broken in libev
vor 4 Jahren
Vsevolod Stakhov
856a786462
[Fix] Try hard to deal with ghost workers
vor 4 Jahren
Vsevolod Stakhov
a2d93ce101
[Minor] Reduce log noise
vor 4 Jahren
Vsevolod Stakhov
64205e24d4
[Rework] Re cache: Load hyperscan early
vor 4 Jahren
Vsevolod Stakhov
41e28d1148
[Rework] Further project structure reorganisation
vor 4 Jahren
Vsevolod Stakhov
3424122c9d
[Rework] Logger: Fix issues found so far
vor 4 Jahren
Vsevolod Stakhov
3ced568c32
[Minor] Implement preliminary termination for hs_helper
vor 4 Jahren