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