Sounds very much like the Solaris 10 "ARC-Effect". Are you using ZFS Filesystem?
Regards Falko Nikos Balkanas schrieb: > Hi, > > During my PPG benchmarks (through fake smsc) with 2 different clients, > bearerbox excibited an increasing memory allocation profile starting > from 9MB till 2.2GB at the end of the test run. Upon finishing the > test and all queue cleared, memory wasn't released. Additionally by > running the same test again, memory kept increasing until bearerbox > reached 2.9 GB at which point it exhausted my server's RAM (4GB) and > started using swap. At this point I interrupted tests worrying about > my server. Again bearerbox didn't release resources. Had to kill it to > reclaim RAM. > > Fortunately the problem is very reproducible. OS: Intel Solaris 10.5, > 4GB RAM. Steps to reproduce: > > Clear logs, stores, etc. Start bearerbox, wapbox, smsbox in daemon > mode (-d -P). Start fakemsmc in interactive mode. Fire test_ppg: > > test/test_ppg -v 5 -r 1000000 -t 1000 > http://212.205.200.120:13007/feedme ~/etc/si.txt ~/etc/pap.txt > > Open top and watch bearerbox's size grow and grow... > > P.S. I have been working on a patch for smsc_fake.c, but these results > are from the cvs version. > > Configuration file: > > group = core > admin-port = 13001 > wapbox-port = 13002 > smsbox-port = 13003 > admin-password = bar > #status-password = foo > #admin-deny-ip = "" > #admin-allow-ip = "" > wdp-interface-name = "*" > log-file = "/tmp/bearerbox.log" > log-level = 4 > #box-deny-ip = "*.*.*.*" > box-allow-ip = "*.*.*.*" > access-log = "/tmp/access.log" > #access-log-format = "%l [SMSC:%i] [SVC:%n] [ACT:%A] [BINF:%B] > [from:%p] [to:%P] [flags:%m:%c:%M:%C:%d] [msg:%L:%I] [udh:%U:%u]" > access-log-clean = true > access-log-format = "%T %l [msg:%L:%I]" > store-location = "/export/home/nbal/kannel.store" > store-type = file > dlr-storage = internal > #ssl-server-cert-file = "cert.pem" > #ssl-server-key-file = "key.pem" > #ssl-certkey-file = "mycertandprivkeyfile.pem" > > group = wapbox > bearerbox-host = 212.205.200.120 > log-file = "/tmp/wapbox.log" > log-level = 4 > syslog-level = none > #access-log = "/tmp/wapaccess.log" > access-log = "/dev/null" > > # SMSC CONNECTIONS, for pushing SI, SL, MMS notifications or whatever > over SMS > > group = smsc > smsc = http > smsc-id = HTTP > allowed-smsc-id = "HTTP" > port = 13004 > system-type = kannel > connect-allow-ip = "*.*.*.*" > smsc-username = foo > smsc-password = bar > no-sender = true > no-coding = true > send-url = "http://www.kannel.gr:9200/pap.cgi" > > group = smsc > smsc = fake > smsc-id = FAKE > denied-smsc-id = "HTTP" > port = 13005 > #dlr-url = > "http://www.kannel.gr:9200/cgi/dlr.cgi?ts=%T&smsID=%I&smscID=%i&dlr=%d&answer=%A&from=%p&to=%P > <http://www.kannel.gr:9200/cgi/dlr.cgi?ts=%T&smsID=%I&smscID=%i&dlr=%d&answer=%A&from=%p&to=%P>" > dlr-url = "http://www.kannel.gr:9200/cgi/dlr.cgi?ts=%T" > connect-allow-ip = "*.*.*.*" > > # SMSBOX SETUP (a kludge!) > > group = smsbox > bearerbox-host = 212.205.200.120 > sendsms-port = 13006 > smsbox-id = dlrbox > > group = smsbox-route > smsbox-id = dlrbox > smsc-id = "FAKE;HTTP" > > group = sendsms-user > username = simple > password = elpmis > default-smsc = FAKE > #dlr-url = > "http://www.kannel.gr:9200/cgi/dlr.cgi?ts=%T&smsID=%I&smscID=%i&dlr=%d&answer=%A&from=%p&to=%P > <http://www.kannel.gr:9200/cgi/dlr.cgi?ts=%T&smsID=%I&smscID=%i&dlr=%d&answer=%A&from=%p&to=%P>" > > # SERVICES > > group = sms-service > keyword = nop > text = "You asked nothing and I did it!" > > # this service is for Kannel www testing > > group = sms-service > keyword = www > get-url = > "http://localhost:15130/sms?user=kannel&pass=rL4y&from=%p&to=%P&text=%r > <http://localhost:15130/sms?user=kannel&pass=rL4y&from=%p&to=%P&text=%r>" > #max-messages = 0 > > # there should be default always > > group = sms-service > keyword = default > catch-all = true > #max-messages = 10 > text = "Thanx for using IAN test bed" > > # PPG CORE SETUP, for defining the push request interface > > group = ppg > ppg-url = "http://212.205.200.120:13007/feedme" > ppg-port = 13007 > #ppg-ssl-port = 8081 > default-smsc = FAKE > concurrent-pushes = 1000 > trusted-pi = true > users = 1024 > service-name = ppg > ppg-smsbox-id = dlrbox > #default-dlr-url = > "http://www.kannel.gr:9200/cgi/dlr.cgi?ts=%T&smsID=%I&smscID=%i&dlr=%d&answer=%A&from=%p&to=%P > <http://www.kannel.gr:9200/cgi/dlr.cgi?ts=%T&smsID=%I&smscID=%i&dlr=%d&answer=%A&from=%p&to=%P>" > default-dlr-url = "http://www.kannel.gr:9200/dlr.html" > #ppg-deny-ip = "*.*.*.*" > ppg-allow-ip = "*.*.*.*" > #ssl-server-cert-file = "cert.pem" > #ssl-server-key-file = "key.pem" > > # PPG USER SETUP, for authorizing a specific push user > > group = wap-push-user > wap-push-user = foo > ppg-username = foo > ppg-password = bar > #dlr-url = > "http://www.kannel.gr:9200/cgi/dlr.cgi?ts=%T&smsID=%I&smscID=%i&dlr=%d&answer=%A&from=%p&to=%P > <http://www.kannel.gr:9200/cgi/dlr.cgi?ts=%T&smsID=%I&smscID=%i&dlr=%d&answer=%A&from=%p&to=%P>" > default-smsc = FAKE > #country-prefix = +358 > #allowed-prefix = "40;60;70" > #denied-prefix = 50 > #white-list = http://localhost:8082/whitelist > #black-list = http://localhost:8082/blacklist > #deny-ip = "*.*.*.*" > #allow-ip = "127.0.0.1" > >
