forum.bitel.ru
http://forum.bitel.ru/

Зависает модуль scheduler
http://forum.bitel.ru/viewtopic.php?f=22&t=278
Страница 1 из 1

Автор:  Lavrenov_Sergey [ 21 июн 2007, 18:34 ]
Заголовок сообщения:  Зависает модуль scheduler

Система Debian linux. 1-2 раза в сутки зависает модуль scheduler. Содержимое файла scheduler.out, когда модуль завис в последний раз:

Checking port 9066...
Port is free starting the applicalion...
Starting TEProccessManager on 9066
Creating socket on 9066
Exception in thread "Thread-506" java.lang.OutOfMemoryError: unable to create new native thread
at java.lang.Thread.start0(Native Method)
at java.lang.Thread.start(Thread.java:574)
at uk.co.westhawk.snmp.stack.Transmitter.<init>(Transmitter.java:58)
at uk.co.westhawk.snmp.stack.AbstractSnmpContext.getTrans(AbstractSnmpContext.java:770)
at uk.co.westhawk.snmp.stack.AbstractSnmpContext.addPdu(AbstractSnmpContext.java:649)
at uk.co.westhawk.snmp.stack.Pdu.send(Pdu.java:204)
at uk.co.westhawk.snmp.stack.Pdu.send(Pdu.java:187)
at bitel.billing.server.ipn.SwitchGateWorker.doSync(SwitchGateWorker.java:76)
at bitel.billing.server.ipn.GateWorker.run(GateWorker.java:55)
Exception in thread "Thread-2" java.lang.OutOfMemoryError: unable to create new native thread
at java.lang.Thread.start0(Native Method)
at java.lang.Thread.start(Thread.java:574)
at bitel.billing.server.task.TaskBase.startTask(TaskBase.java:72)
at bitel.billing.server.task.TaskData.startTask(TaskData.java:72)
at bitel.billing.server.TaskExecuter.run(TaskExecuter.java:75)
Exception in thread "Thread-511" java.lang.OutOfMemoryError: unable to create new native thread
at java.lang.Thread.start0(Native Method)
at java.lang.Thread.start(Thread.java:574)
at uk.co.westhawk.snmp.stack.Transmitter.<init>(Transmitter.java:58)
at uk.co.westhawk.snmp.stack.AbstractSnmpContext.getTrans(AbstractSnmpContext.java:770)
at uk.co.westhawk.snmp.stack.AbstractSnmpContext.addPdu(AbstractSnmpContext.java:649)
at uk.co.westhawk.snmp.stack.Pdu.send(Pdu.java:204)
at uk.co.westhawk.snmp.stack.Pdu.send(Pdu.java:187)
at bitel.billing.server.ipn.SwitchGateWorker.doSync(SwitchGateWorker.java:76)
at bitel.billing.server.ipn.GateWorker.run(GateWorker.java:55)
Exception in thread "Thread-514" java.lang.OutOfMemoryError: unable to create new native thread
at java.lang.Thread.start0(Native Method)
at java.lang.Thread.start(Thread.java:574)
at uk.co.westhawk.snmp.stack.AbstractSnmpContext.activate(AbstractSnmpContext.java:169)
at uk.co.westhawk.snmp.stack.AbstractSnmpContext.<init>(AbstractSnmpContext.java:145)
at uk.co.westhawk.snmp.stack.AbstractSnmpContext.<init>(AbstractSnmpContext.java:108)
at uk.co.westhawk.snmp.stack.SnmpContext.<init>(SnmpContext.java:85)
at bitel.billing.server.ipn.SwitchGateWorker.doSync(SwitchGateWorker.java:47)
at bitel.billing.server.ipn.GateWorker.run(GateWorker.java:55)

Что случается и как с этим бороться?

Автор:  Администратор [ 22 июн 2007, 13:30 ]
Заголовок сообщения: 

Ему не хватает памяти, поправьте параметр -Xmx в scheduler.sh - это сколько может взять процесс максимально памяти.

Автор:  Lavrenov_Sergey [ 25 июн 2007, 14:12 ]
Заголовок сообщения: 

Поправил параметр -Xmx (было 256m, сделал 512m). Общее количество памяти на сервере 768Мб. Через 3 часа снова завис scheduler. Содержимое файла scheduler.out:

Checking port 9066...
Port is free starting the applicalion...
Starting TEProccessManager on 9066
Creating socket on 9066
Exception in thread "Thread-501" Exception in thread "Thread-504" java.lang.OutOfMemoryError: unable to create new native thread
at java.lang.Thread.start0(Native Method)
at java.lang.Thread.start(Thread.java:574)
at uk.co.westhawk.snmp.stack.AbstractSnmpContext.activate(AbstractSnmpContext.java:169)
at uk.co.westhawk.snmp.stack.AbstractSnmpContext.<init>(AbstractSnmpContext.java:145)
at uk.co.westhawk.snmp.stack.AbstractSnmpContext.<init>(AbstractSnmpContext.java:108)
at uk.co.westhawk.snmp.stack.SnmpContext.<init>(SnmpContext.java:85)
at bitel.billing.server.ipn.SwitchGateWorker.doSync(SwitchGateWorker.java:47)
at bitel.billing.server.ipn.GateWorker.run(GateWorker.java:55)
java.lang.OutOfMemoryError: unable to create new native thread
at java.lang.Thread.start0(Native Method)
at java.lang.Thread.start(Thread.java:574)
at uk.co.westhawk.snmp.stack.AbstractSnmpContext.activate(AbstractSnmpContext.java:169)
at uk.co.westhawk.snmp.stack.AbstractSnmpContext.<init>(AbstractSnmpContext.java:145)
at uk.co.westhawk.snmp.stack.AbstractSnmpContext.<init>(AbstractSnmpContext.java:108)
at uk.co.westhawk.snmp.stack.SnmpContext.<init>(SnmpContext.java:85)
at bitel.billing.server.ipn.SwitchGateWorker.doSync(SwitchGateWorker.java:47)
at bitel.billing.server.ipn.GateWorker.run(GateWorker.java:55)
Exception in thread "Thread-508" java.lang.OutOfMemoryError: unable to create new native thread
at java.lang.Thread.start0(Native Method)
at java.lang.Thread.start(Thread.java:574)
at bitel.billing.server.ipn.IPNTestGates.testGates(IPNTestGates.java:203)
at bitel.billing.server.ipn.IPNTestGates.executeTask(IPNTestGates.java:101)
at bitel.billing.server.task.TaskBase.run(TaskBase.java:45)
Exception in thread "Thread-2" java.lang.OutOfMemoryError: unable to create new native thread
at java.lang.Thread.start0(Native Method)
at java.lang.Thread.start(Thread.java:574)
at bitel.billing.server.task.TaskBase.startTask(TaskBase.java:72)
at bitel.billing.server.task.TaskData.startTask(TaskData.java:72)
at bitel.billing.server.TaskExecuter.run(TaskExecuter.java:75)

Какие еще есть предложения?

Автор:  Lavrenov_Sergey [ 25 июн 2007, 14:44 ]
Заголовок сообщения: 

Еще добавление по ps -aux выполняется более 5000 процессов, почти все такого вида:
root 15746 0.0 2.8 1992596 21952 ? S Jun22 0:00 /usr/local/jdk/bin/java -Xmx512m -cp .:./lib/activation.jar:./lib/avalon-framework.jar:./lib/batik.jar:./lib/bill.jar:./lib/bsh-1.3.0.jar:./lib/call.jar:./lib/card.jar:./lib/commons-beanutils.jar:./lib/commons-collections.jar:./lib/commons-dbcp-1.1.jar:./lib/commons-digester.jar:./lib/commons-logging.jar:./lib/commons-pool-1.1.jar:./lib/dialup.jar:./lib/email.jar:./lib/fop.jar:./lib/gnu-crypto.jar:./lib/ipn.jar:./lib/jasperreports-0.5.3.jar:./lib/jcommon-0.9.4.jar:./lib/jetty.jar:./lib/jfreechart-0.9.19.jar:./lib/ldap.jar:./lib/log4j-1.2.8.jar:./lib/mail.jar:./lib/mysql-5.0.3.jar:./lib/npay.jar:./lib/phone.jar:./lib/reports.jar:./lib/rscm.jar:./lib/server.jar:./lib/servlet.jar:./lib/snmp4_13.jar:./lib/trayinfo.jar:./lib/voiceip.jar:./lib/wm.jar:./lib/xalan.jar:./lib/xercesImpl.jar: bitel.billing.server.TaskExecuter -estart

Как добиться чтобы они закрывались после выполнения?

Автор:  Администратор [ 26 июн 2007, 11:15 ]
Заголовок сообщения: 

А какая у вас операционная система?

Автор:  Lavrenov_Sergey [ 26 июн 2007, 12:35 ]
Заголовок сообщения: 

Debian Linux ядро 2.4.27-2-k7

Автор:  Lavrenov_Sergey [ 26 июн 2007, 15:49 ]
Заголовок сообщения: 

Еще один момент. У нас шлюзы прописанные в модуле IPN напрямую из BG-биллинга не управляются (управляются из другого места на основе данных в базе SQL). Может процессы не выгружаются из-за того, что не могут связаться со шлюзом и отрабатываются не до конца.

Автор:  Администратор [ 27 июн 2007, 22:25 ]
Заголовок сообщения: 

Мне кажется что проблема в очень старой системе и конкретно в библиотеке glibc. Дело в том что в новых версиях (уже года 2 как) там встраивается библиотека NPTL которую использует java машина для порождения потоков.
В вашем случае потоки пораждаются с помощью fork вызова, вот откуда это большое количество процессов в ps.
Я предлагаю вам найти систему поновее и попробовать для начала поставить там сервер биллинга и планировщик, просто параллельно с основной системой. И пусть там отработает эта задача.

Автор:  Администратор [ 28 июн 2007, 02:21 ]
Заголовок сообщения: 

Тут сразу несколько факторов по-моему.. Даже то что nptl нет - не основной, скорее всего это в самом деле из-за попытки планировщика по SNMP. управлять шлюзами. А т.к. они не отвечают то висят куча ожидающих ответа потоков, которые отмирают медленнее чем попождаются. Мне кажется если мы сделаем в типе шлюза Switch галочку "не управляния" коммутаторами, то проблема решится. Только вам придется подождать. Но уже недолго :)

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/