[OpenSIPS-Devel] [OpenSIPS/opensips] babfb7: [core] make the per-process IPC sending non-blocking

Bogdan Andrei IANCU noreply at github.com
Mon Nov 8 07:15:12 EST 2021


  Branch: refs/heads/3.2
  Home:   https://github.com/OpenSIPS/opensips
  Commit: babfb7d34ddd4ba5ec9e1d351ef3f4bc3af14311
      https://github.com/OpenSIPS/opensips/commit/babfb7d34ddd4ba5ec9e1d351ef3f4bc3af14311
  Author: Bogdan-Andrei Iancu <bogdan at opensips.org>
  Date:   2021-11-08 (Mon, 08 Nov 2021)

  Changed paths:
    M ipc.c

  Log Message:
  -----------
  [core] make the per-process IPC sending non-blocking

A process may get stuck (history showed us such real cases) and we do not want to have other processes getting blocked by trying to do an IPC to such procs (if they are stuck, they will not consume their IPC cmds, so the IPC sender will also block after some time, when the pipe's buffer is full).
So, better make the write pipe non-blocking, discard the current IPC cmd and avoid escalating the blocking over other procs.

(cherry picked from commit 62af720cd5a9d04d982b474398294ef5068e9f45)


  Commit: 1796502c143f9ebb501030e3e8f576741b8bcdbf
      https://github.com/OpenSIPS/opensips/commit/1796502c143f9ebb501030e3e8f576741b8bcdbf
  Author: Bogdan-Andrei Iancu <bogdan at opensips.org>
  Date:   2021-11-08 (Mon, 08 Nov 2021)

  Changed paths:
    M ipc.c

  Log Message:
  -----------
  [core] improve logging when IPC blocking is detected

Throw a CRITical log with info on the target process

(cherry picked from commit dce2643e5716f082847a90e409c2156dde9e4852)


Compare: https://github.com/OpenSIPS/opensips/compare/671cc256a78a...1796502c143f



More information about the Devel mailing list