2008/12/19 Bogdan-Andrei Iancu <[email protected]>: > Also, looking at the error you sent ("build_res_buf_from_sip_req: out of pkg > memory ; needs 25296") - the function requests 25K of mem for the reply > :D....my question is - do you register multiple contacts per single AOR ? > this is the only way (except a bug) I can explain this huge amount of mem
Ok, now i've tryed with 5000 different AoR's (instead of 5000 different contacts for just 2 AoR's) and the conslusion is awesome! - OpenSIPS is capable of handling 500 REGISTER (with authentication) per second. Doing it for 5000 registrations in total caused no retransmission, so the process finished correctly in 10 seconds: usrloc:registered_users = 5000 - For the same test, Asterisk (which doesn't need to query a DB for users since it uses a plain text file sip.conf) it created 17366 retransmissions, 375 timeouts, and finally, just 4495 users were correctly registered. 5000 sip peers [Monitored: 0 online, 0 offline Unmonitored: 4495 online, 505 offline] If I set more registrations per second, the maybe OpenSIPS requires some retransmissions (children=4) but all the registrations end correctly. Asterisk instead... PD: Just an issue. I use "usrloc", "db_mode" = 1. After the 5000 registrations OpenSIPS has problems related to memory and I can't do simple tasks as: ~# opensipsctl ul show --brief Dec 22 12:04:13 [26421] ERROR:core:create_mi_node: no more pkg mem Dec 22 12:04:13 [26421] ERROR:mi_datagram:mi_datagram_server: failed to process the command 500 command failed Dec 22 12:07:08 [29435] INFO:benchmark:child_init: initing child... Dec 22 12:07:08 [29433] ERROR:db_mysql:db_mysql_convert_row: no private memory left Dec 22 12:07:08 [29433] ERROR:db_mysql:db_mysql_fetch_result: error while converting row #1488 Dec 22 12:07:08 [29441] INFO:benchmark:child_init: initing child... Dec 22 12:07:08 [29433] ERROR:usrloc:preload_udomain: fetching rows failed Dec 22 12:07:08 [29433] ERROR:usrloc:child_init: child(1): failed to preload domain 'location' Dec 22 12:07:08 [29433] ERROR:core:init_mod_child: failed to initializing module usrloc, rank 1 Dec 22 12:07:08 [29433] ERROR:core:main_loop: init_child failed for UDP listener I run OpenSIPS with "-m 64". Should I increase it? Running with "-m 512" I get a different error: ~# opensipsctl ul show --brief Dec 22 12:09:44 [29741] ERROR:mi_datagram:datagram_recur_write_tree: failed to write -line too long!!! Dec 22 12:09:44 [29741] ERROR:mi_datagram:mi_datagram_server: failed to build the response I assume this is an error related to opensipsctl command in some way. But anyway, I cannot stop and start (or restart) opensips since I get the following error: Dec 22 12:11:54 [30183] ERROR:db_mysql:db_mysql_convert_row: no private memory left Dec 22 12:11:54 [30183] ERROR:db_mysql:db_mysql_fetch_result: error while converting row #1488 Dec 22 12:11:54 [30183] ERROR:usrloc:preload_udomain: fetching rows failed Dec 22 12:11:54 [30183] ERROR:usrloc:child_init: child(1): failed to preload domain 'location' Dec 22 12:11:54 [30183] ERROR:core:init_mod_child: failed to initializing module usrloc, rank 1 Dec 22 12:11:54 [30183] ERROR:core:main_loop: init_child failed for UDP listener Dec 22 12:11:54 [30221] CRITICAL:core:receive_fd: EOF on 13 Dec 22 12:11:54 [30182] INFO:core:handle_sigs: child process 30183 exited normally, status=255 Dec 22 12:11:54 [30182] INFO:core:handle_sigs: terminating due to SIGCHLD This is very annoying and occurs when there are 5000 users in location table. But I'm using 512 MB of shared memory! How to solve it? Thanks a lot. -- Iñaki Baz Castillo <[email protected]> _______________________________________________ Users mailing list [email protected] http://lists.opensips.org/cgi-bin/mailman/listinfo/users
