[SR-Users] t_lookup.c: WARNING: script writer didn't release transaction - problem

Efelin Novak efelin.novak at gmail.com
Sun Mar 3 16:38:43 CET 2013


Hi folks,

we have a serious issue with tm module. In Fail route we would like to
send a reply 404 when a cr_route function fails(no destination found).
We use t_reply("404", "No route to destination"). However after the
call is disconnected with a 404 reply the tm module writes a following
warning

WARNING: tm [t_lookup.c:1543]: WARNING: script writer didn't release transaction

Very soon after this error message is shown a segfault occurs. Log is
as follows:

Mar  3 15:26:46 hostname kamailio[791]: ERROR: carrierroute
[cr_func.c:594]: desired routing domain doesn't exist, prefix
0039333333333, carrier 14, domain 2
Mar  3 15:26:46 hostname kamailio[791]: WARNING: tm [t_lookup.c:1543]:
WARNING: script writer didn't release transaction
//ACK is received
Mar  3 15:26:52 hostname kernel: [771134.093250] kamailio[796]:
segfault at 4 ip 0815c182 sp bf8ace00 error 6 in
kamailio[8048000+1ea000]
Mar  3 15:26:53 hostname kamailio[803]: : <core> [pass_fd.c:293]:
ERROR: receive_fd: EOF on 15
Mar  3 15:26:53 hostname kamailio[790]: ALERT: <core> [main.c:785]:
child process 796 exited by a signal 11
Mar  3 15:26:53 hostname kamailio[790]: ALERT: <core> [main.c:788]:
core was generated
Mar  3 15:26:53 hostname kamailio[790]: INFO: <core> [main.c:800]:
INFO: terminating due to SIGCHLD
Mar  3 15:26:53 hostname kamailio[802]: INFO: <core> [main.c:851]:
INFO: signal 15 received
Mar  3 15:26:53 hostname kamailio[799]: INFO: <core> [main.c:851]:
INFO: signal 15 received
Mar  3 15:26:53 hostname kamailio[801]: INFO: <core> [main.c:851]:
INFO: signal 15 received
Mar  3 15:26:53 hostname kamailio[798]: INFO: <core> [main.c:851]:
INFO: signal 15 received
Mar  3 15:26:53 hostname kamailio[800]: INFO: <core> [main.c:851]:
INFO: signal 15 received
Mar  3 15:26:53 hostname kamailio[797]: INFO: <core> [main.c:851]:
INFO: signal 15 received
Mar  3 15:26:53 hostname kamailio[792]: INFO: <core> [main.c:851]:
INFO: signal 15 received
Mar  3 15:26:53 hostname kamailio[803]: INFO: <core> [main.c:851]:
INFO: signal 15 received
Mar  3 15:26:53 hostname kamailio[795]: INFO: <core> [main.c:851]:
INFO: signal 15 received
Mar  3 15:26:53 hostname kamailio[791]: INFO: <core> [main.c:851]:
INFO: signal 15 received
Mar  3 15:26:53 hostname kamailio[794]: INFO: <core> [main.c:851]:
INFO: signal 15 received
Mar  3 15:26:53 hostname kamailio[793]: INFO: <core> [main.c:851]:
INFO: signal 15 received
Mar  3 15:26:53 hostname kamailio[790]: INFO: <core>
[mem/f_malloc.c:532]: freeing a free fragment (0x886b3ad8/0x886b3ae0)
- ignore
Mar  3 15:26:53 hostname kernel: [771135.681720] kamailio[790]:
segfault at 7dd193e0 ip 0816f5cd sp bf8acc20 error 4 in
kamailio[8048000+1ea000]

Currently we have fixed it using a custom route

route(T_REPLY);
.
.
.
route[T_REPLY] {
    sl_send_reply("404","No route to destination");
}

This works correctly with no error or a warning message or a segfault.

We are using kamilio version: kamailio 3.3.4 (i386/linux) f8c8f2

Is this behavior a bug or should I dig deeper into the  tm documentation?

Kind regards

Efelin



More information about the sr-users mailing list