OpenSIPS / opensips

OpenSIPS is a GPL implementation of a multi-functionality SIP Server that targets to deliver a high-level technical solution (performance, security and quality) to be used in professional SIP server platforms.
https://opensips.org
Other
1.27k stars 578 forks source link

[BUG] OpenSIPS 3.4 drops requests because "rtpengine:pv_handle_rtpstat" can not process stats from rtpengine #3406

Closed kertor closed 2 months ago

kertor commented 3 months ago

OpenSIPS version you are running

version: opensips 3.4.5 (x86_64/linux)
flags: STATS: On, DISABLE_NAGLE, USE_MCAST, SHM_MMAP, PKG_MALLOC, Q_MALLOC, F_MALLOC, HP_MALLOC, DBG_MALLOC, FAST_LOCK-FUTEX-ADAPTIVE_WAIT
ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16, MAX_URI_SIZE 1024, BUF_SIZE 65535
poll method support: poll, epoll, sigio_rt, select.
git revision: 3eb9916b4
main.c compiled on  with gcc 13

Describe the bug

OpenSIPS 3.4 drops BYE because can not process stats from rtpengine. How it looks: 3_4_problem_BYE

OpenSIPS 3.1 on same scenario: 3_1_good_BYE

In 3.4 logs we can see:

opensips[163545]: DBG:rtpengine:rtpe_function_call: proxy reply: d7:created
opensips[163545]: DBG:core:comp_scriptvar: str 20: route
opensips[163545]: DBG:core:destroy_avp_list: destroying list (nil)
opensips[163545]: DBG:core:receive_msg: cleaning up

In 3.1 logs we can see another messages:

opensips[1417169]: DBG:rtpengine:rtpe_function_call: proxy reply: d7:created
opensips[1417169]: DBG:rtpengine:pv_handle_rtpstat: no MOS found!
opensips[1417169]: DBG:core:parse_headers: flags=40
opensips[1417169]: DBG:rtpengine:rtpe_function_call: proxy reply: d7:created
opensips[1417169]: DBG:core:comp_scriptvar: str 20 : request_route
opensips[1417169]: DBG:tm:t_newtran: transaction on entrance=(nil)
opensips[1417169]: DBG:core:parse_headers: flags=ffffffffffffffff
....

To Reproduce

Just try to receive rtpstat from rtpengine.

Expected behavior

rtpstat will be processed, also OpenSIPS will pass BYE request through himself.

Relevant System Logs

Logs: 3_1_good_BYE.txt 3_4_problem_BYE.txt

OS/environment information

Additional context

github-actions[bot] commented 3 months ago

Any updates here? No progress has been made in the last 15 days, marking as stale. Will close this issue if no further updates are made in the next 30 days.

kertor commented 3 months ago

UP

bogdan-iancu commented 3 months ago

@kertor , how do you trigger rtpengine in relation to the BYE request? what script function do you use?

kertor commented 2 months ago

The issue is no longer relevant, as rtpengine_offer() was called twice in a row. We fixed the configuration, and now rtpengine_offer() + rtpengine_answer() is called. The problem no longer occurs.

Thank you!