forum.bitel.ru http://forum.bitel.ru/ |
|
Скрипт поведения на событие "Договор создан" http://forum.bitel.ru/viewtopic.php?f=19&t=6378 |
Страница 1 из 1 |
Автор: | Phricker [ 29 янв 2012, 02:19 ] |
Заголовок сообщения: | Скрипт поведения на событие "Договор создан" |
Добрый вечер знатоки ![]() Есть вот такой скрипт висящий на событии "Договор создан" Код: import bitel.billing.server.script.bean.event.*; import bitel.billing.common.CommonUtils; import bitel.billing.server.contract.bean.*; import ru.bitel.bgbilling.kernel.module.server.bean.UserManager; import ru.bitel.bgbilling.kernel.module.common.bean.User; User user = new UserManager(con).getUsersMap().get(event.getUserId()); int pid = user.getContractPid(); int cid = user.getContractCid(); ContractParameterManager cpm = new ContractParameterManager( con ); cpm.setContractRefParam(event.getContractId(), pid, cid, event.getUserId()); Работает на ура, и заполняет в новом договоре строчку с привязкой к договору контрагента. НО! Стоит добавить строчку Код: cpm.setGroup(event.getContractId(), 11); я пока не говорю о том, чтобы получать long groups = user.getContractGroups(); и потом его парсить, чтобы использовать cpm.setGroup(int, int) или же просто напросто использовать query = "update contract set gr = groups and id = cid". Просто втупую задаем группу Как только нажимаю "Создать" в шаблонах договоров, это окно наглухо виснет. Через некоторое время в server.error.log вылавливаю такое Код: script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:946) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2985) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1631) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at com.mysql.jdbc.ServerPreparedStatement.serverExecute(ServerPreparedStatement.java:1232) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at com.mysql.jdbc.ServerPreparedStatement.executeInternal(ServerPreparedStatement.java:740) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1604) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1519) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1504) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at bitel.billing.server.contract.bean.ContractParameterManager.setGroup(ContractParameterManager.java:1336) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at java.lang.reflect.Method.invoke(Method.java:597) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at bsh.Reflect.invokeMethod(Reflect.java:137) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at bsh.Reflect.invokeObjectMethod(Reflect.java:83) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at bsh.Name.invokeMethod(Name.java:858) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:75) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at bsh.Interpreter.eval(Interpreter.java:653) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at ru.bitel.bgbilling.kernel.script.server.bean.ScriptInstance.eval(ScriptInstance.java:366) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at bitel.billing.server.script.bean.ScriptMachine$SimpleScriptRunner.runScript(ScriptMachine.java:61) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at bitel.billing.server.script.bean.ScriptMachine.runScriptImpl(ScriptMachine.java:180) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at bitel.billing.server.script.bean.ScriptMachine$ThreadedScriptMachine.access$0(ScriptMachine.java:1) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at bitel.billing.server.script.bean.ScriptMachine$ThreadedScriptMachine$1$1.run(ScriptMachine.java:248) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at bitel.billing.server.script.bean.ScriptMachine$ThreadedScriptMachine$1$1.run(ScriptMachine.java:1) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at java.security.AccessController.doPrivileged(Native Method) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at javax.security.auth.Subject.doAs(Subject.java:396) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at bitel.billing.server.script.bean.ScriptMachine$ThreadedScriptMachine$1.call(ScriptMachine.java:243) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at bitel.billing.server.script.bean.ScriptMachine$ThreadedScriptMachine$1.call(ScriptMachine.java:1) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at java.util.concurrent.FutureTask.run(FutureTask.java:138) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) script 01-28/23:59:10 ERROR [pool-2-thread-1] LoggingPrintStream - at java.lang.Thread.run(Thread.java:662) В чем может быть дело? Как можно назначать некие группы сразу же при создании договора? (не используя шаблоны) Хочу добиться того, чтобы было всего два шаблона договоров, а этот скрипт автоматически назначал договору те группы которые выделены у пользователя в параметрах (все равно они никак больше у меня не используются. Все контрагенты привязаны в соответствии со своими основными договорами). А то слишком много шаблонов появляется. |
Автор: | dimOn [ 30 янв 2012, 12:05 ] |
Заголовок сообщения: | Re: Скрипт поведения на событие "Договор создан" |
у меня есть одно предположение, конечно... А так работает? Код: PreparedStatement ps = con.prepareStatement( "UPDATE contract SET gr=gr|(1<<?) WHERE id=?" );
ps.setLong( 1, 11 ); ps.setInt( 2, event.getContractId() ); ps.executeUpdate(); ps.close(); |
Автор: | Phricker [ 30 янв 2012, 13:02 ] |
Заголовок сообщения: | Re: Скрипт поведения на событие "Договор создан" |
Нет, не работает. Я пробовал уже такое. Т.к. для меня допустим это было бы самым легким решением, чем разбивать long получаемый по user.getContractGroups(). Просто тупо назначить, то что я получаю вышенаписанным в этот запрос и проблем нет. Пробовал и повесить на событие "После действия" но что то оно у меня не срабатывает. Либо я туплю либо что то не так сделал |
Автор: | Phricker [ 31 янв 2012, 12:20 ] |
Заголовок сообщения: | Re: Скрипт поведения на событие "Договор создан" |
АП. Димон приди ![]() |
Автор: | dimOn [ 31 янв 2012, 15:11 ] |
Заголовок сообщения: | Re: Скрипт поведения на событие "Договор создан" |
Ничего не понял. Вышеуказанный мой код выдаёт точно такую же ошибку с незакрытой транзакцией? |
Автор: | Phricker [ 31 янв 2012, 15:17 ] |
Заголовок сообщения: | Re: Скрипт поведения на событие "Договор создан" |
Создание договора висело на шаблоне минуты 2. После 2х минут это появилось в логе и договор создался без групп Код: [root@lia log]# cat server.error.log
script 01-31/13:15:58 ERROR ["http-bio-/0.0.0.0-8443"-exec-9] ScriptMachine - Eval error: java.security.PrivilegedActionException: Sourced file: Function [id:39; title:test] : Method Invocation ps.executeUpdate : at Line: 18 : in file: Function [id:39; title:test] : ps .executeUpdate ( ) Target exception: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction java.util.concurrent.ExecutionException: java.security.PrivilegedActionException: Sourced file: Function [id:39; title:test] : Method Invocation ps.executeUpdate : at Line: 18 : in file: Function [id:39; title:test] : ps .executeUpdate ( ) Target exception: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:232) at java.util.concurrent.FutureTask.get(FutureTask.java:91) at bitel.billing.server.script.bean.ScriptMachine$ThreadedScriptMachine.runScriptImpl(ScriptMachine.java:267) at bitel.billing.server.script.bean.ScriptMachine.runScript(ScriptMachine.java:119) at bitel.billing.server.script.bean.event.EventProcessor.processContractEvent(EventProcessor.java:306) at bitel.billing.server.script.bean.event.EventProcessor.processEvent(EventProcessor.java:224) at bitel.billing.server.script.bean.event.EventProcessor.processEvent(EventProcessor.java:192) at bitel.billing.server.contract.action.ActionNewContract.doAction(ActionNewContract.java:104) at bitel.billing.server.Executer.doModule(Unknown Source) at bitel.billing.server.Executer$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:396) at bitel.billing.server.Executer.doPost(Unknown Source) at javax.servlet.http.HttpServlet.service(HttpServlet.java:641) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at bitel.billing.server.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:48) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:403) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:301) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:162) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) Caused by: java.security.PrivilegedActionException: Sourced file: Function [id:39; title:test] : Method Invocation ps.executeUpdate : at Line: 18 : in file: Function [id:39; title:test] : ps .executeUpdate ( ) Target exception: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:396) at bitel.billing.server.script.bean.ScriptMachine$ThreadedScriptMachine$1.call(ScriptMachine.java:243) at bitel.billing.server.script.bean.ScriptMachine$ThreadedScriptMachine$1.call(ScriptMachine.java:1) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) ... 3 more Caused by: Sourced file: Function [id:39; title:test] : Method Invocation ps.executeUpdate : at Line: 18 : in file: Function [id:39; title:test] : ps .executeUpdate ( ) Target exception: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:97) at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102) at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47) at bsh.Interpreter.eval(Interpreter.java:653) at ru.bitel.bgbilling.kernel.script.server.bean.ScriptInstance.eval(ScriptInstance.java:366) at bitel.billing.server.script.bean.ScriptMachine$SimpleScriptRunner.runScript(ScriptMachine.java:61) at bitel.billing.server.script.bean.ScriptMachine.runScriptImpl(ScriptMachine.java:180) at bitel.billing.server.script.bean.ScriptMachine$ThreadedScriptMachine.access$0(ScriptMachine.java:1) at bitel.billing.server.script.bean.ScriptMachine$ThreadedScriptMachine$1$1.run(ScriptMachine.java:248) at bitel.billing.server.script.bean.ScriptMachine$ThreadedScriptMachine$1$1.run(ScriptMachine.java:1) ... 9 more [root@lia log]# |
Автор: | Phricker [ 31 янв 2012, 18:13 ] |
Заголовок сообщения: | Re: Скрипт поведения на событие "Договор создан" |
Димон вернись ![]() |
Автор: | stark [ 31 янв 2012, 18:55 ] |
Заголовок сообщения: | Re: Скрипт поведения на событие "Договор создан" |
Код: show innodb status
|
Автор: | Phricker [ 31 янв 2012, 18:56 ] |
Заголовок сообщения: | Re: Скрипт поведения на событие "Договор создан" |
Код: | InnoDB | |
===================================== 120131 16:56:04 INNODB MONITOR OUTPUT ===================================== Per second averages calculated from the last 53 seconds ---------- SEMAPHORES ---------- OS WAIT ARRAY INFO: reservation count 2043630, signal count 1840522 Mutex spin waits 0, rounds 60553812, OS waits 1521395 RW-shared spins 279986, OS waits 127374; RW-excl spins 642410, OS waits 195339 ------------ TRANSACTIONS ------------ Trx id counter 0 278159214 Purge done for trx's n:o < 0 278157368 undo n:o < 0 0 History list length 845 LIST OF TRANSACTIONS FOR EACH SESSION: ---TRANSACTION 0 0, not started, process no 1822, OS thread id 140557873616640 MySQL thread id 52881, query id 485079390 localhost root show innodb status ---TRANSACTION 0 278159075, not started, process no 1822, OS thread id 140557883201280 MySQL thread id 52877, query id 485079087 127.0.0.1 bill ---TRANSACTION 0 278159124, not started, process no 1822, OS thread id 140558261729024 MySQL thread id 52859, query id 485079221 127.0.0.1 bill ---TRANSACTION 0 278159212, not started, process no 1822, OS thread id 140558248949504 MySQL thread id 52856, query id 485079389 127.0.0.1 bill ---TRANSACTION 0 278159090, not started, process no 1822, OS thread id 140557869090560 MySQL thread id 52879, query id 485079121 127.0.0.1 bill ---TRANSACTION 0 278159155, not started, process no 1822, OS thread id 140557865096960 MySQL thread id 52864, query id 485079290 127.0.0.1 bill ---TRANSACTION 0 278159076, not started, process no 1822, OS thread id 140557892519680 MySQL thread id 52861, query id 485079089 127.0.0.1 bill ---TRANSACTION 0 278159139, not started, process no 1822, OS thread id 140558262793984 MySQL thread id 52871, query id 485079260 127.0.0.1 bill ---TRANSACTION 0 278159091, not started, process no 1822, OS thread id 140557902370560 MySQL thread id 52869, query id 485079145 127.0.0.1 bill ---TRANSACTION 0 278159092, not started, process no 1822, OS thread id 140557875480320 MySQL thread id 52855, query id 485079141 127.0.0.1 bill ---TRANSACTION 0 278159105, not started, process no 1822, OS thread id 140557880805120 MySQL thread id 52873, query id 485079179 127.0.0.1 bill ---TRANSACTION 0 278159166, not started, process no 1822, OS thread id 140557882935040 MySQL thread id 52853, query id 485079305 127.0.0.1 bill ---TRANSACTION 0 278159144, not started, process no 1822, OS thread id 140558242825984 MySQL thread id 52852, query id 485079269 127.0.0.1 bill ---TRANSACTION 0 278159190, not started, process no 1822, OS thread id 140560836843264 MySQL thread id 52835, query id 485079347 127.0.0.1 bill ---TRANSACTION 0 278159088, not started, process no 1822, OS thread id 140558301320960 MySQL thread id 52844, query id 485079114 127.0.0.1 bill ---TRANSACTION 0 278159108, not started, process no 1822, OS thread id 140557901838080 MySQL thread id 52841, query id 485079195 127.0.0.1 bill ---TRANSACTION 0 278159109, not started, process no 1822, OS thread id 140557893850880 MySQL thread id 52849, query id 485079191 127.0.0.1 bill ---TRANSACTION 0 278159205, not started, process no 1822, OS thread id 140557866960640 MySQL thread id 52838, query id 485079381 127.0.0.1 bill ---TRANSACTION 0 278159103, not started, process no 1822, OS thread id 140560726861568 MySQL thread id 52818, query id 485079166 127.0.0.1 bill ---TRANSACTION 0 278159179, not started, process no 1822, OS thread id 140557872019200 MySQL thread id 52805, query id 485079326 127.0.0.1 bill ---TRANSACTION 0 277328811, not started, process no 1822, OS thread id 140557892785920 MySQL thread id 52732, query id 485074677 127.0.0.1 bill ---TRANSACTION 0 278159106, not started, process no 1822, OS thread id 140560724199168 MySQL thread id 52574, query id 485079175 127.0.0.1 bill ---TRANSACTION 0 278157085, not started, process no 1822, OS thread id 140558243092224 MySQL thread id 52412, query id 485078151 127.0.0.1 bill ---TRANSACTION 0 278158659, not started, process no 1822, OS thread id 140557876279040 MySQL thread id 52362, query id 485078211 127.0.0.1 bill ---TRANSACTION 0 278157719, not started, process no 1822, OS thread id 140557873882880 MySQL thread id 52250, query id 485076367 127.0.0.1 bill ---TRANSACTION 0 277326288, not started, process no 1822, OS thread id 140557874681600 MySQL thread id 52249, query id 485068955 127.0.0.1 bill ---TRANSACTION 0 278157083, not started, process no 1822, OS thread id 140557896513280 MySQL thread id 52248, query id 485078672 127.0.0.1 bill ---TRANSACTION 0 277328808, not started, process no 1822, OS thread id 140558255871744 MySQL thread id 52247, query id 485063574 127.0.0.1 bill ---TRANSACTION 0 278156284, not started, process no 1822, OS thread id 140560725530368 MySQL thread id 52246, query id 485077129 127.0.0.1 bill ---TRANSACTION 0 278157441, not started, process no 1822, OS thread id 140560727394048 MySQL thread id 52118, query id 485075820 127.0.0.1 bill ---TRANSACTION 0 270994199, not started, process no 1822, OS thread id 140557889058560 MySQL thread id 50241, query id 470547718 10.0.6.13 bill ---TRANSACTION 0 274276488, not started, process no 1822, OS thread id 140557893318400 MySQL thread id 42458, query id 477176809 127.0.0.1 bill ---TRANSACTION 0 274276490, not started, process no 1822, OS thread id 140558261995264 MySQL thread id 42457, query id 477176826 127.0.0.1 bill ---TRANSACTION 0 274276489, not started, process no 1822, OS thread id 140558243624704 MySQL thread id 42451, query id 477176830 127.0.0.1 bill ---TRANSACTION 0 274271702, not started, process no 1822, OS thread id 140558249215744 MySQL thread id 42450, query id 477177203 127.0.0.1 bill ---TRANSACTION 0 276295719, not started, process no 1822, OS thread id 140557885331200 MySQL thread id 37382, query id 485079096 127.0.0.1 bill ---TRANSACTION 0 276296044, not started, process no 1822, OS thread id 140557884532480 MySQL thread id 35805, query id 485078294 127.0.0.1 bill ---TRANSACTION 0 276296057, not started, process no 1822, OS thread id 140557892253440 MySQL thread id 35582, query id 485077681 127.0.0.1 bill ---TRANSACTION 0 276296073, not started, process no 1822, OS thread id 140558245222144 MySQL thread id 35581, query id 485079094 127.0.0.1 bill -------- FILE I/O -------- I/O thread 0 state: waiting for i/o request (insert buffer thread) I/O thread 1 state: waiting for i/o request (log thread) I/O thread 2 state: waiting for i/o request (read thread) I/O thread 3 state: waiting for i/o request (write thread) Pending normal aio reads: 0, aio writes: 0, ibuf aio reads: 0, log i/o's: 0, sync i/o's: 0 Pending flushes (fsync) log: 0; buffer pool: 0 140149 OS file reads, 54990665 OS file writes, 1793988 OS fsyncs 0.02 reads/s, 16384 avg bytes/read, 251.01 writes/s, 1.34 fsyncs/s ------------------------------------- INSERT BUFFER AND ADAPTIVE HASH INDEX ------------------------------------- Ibuf: size 1, free list len 135, seg size 137, 53208 inserts, 53208 merged recs, 17730 merges Hash table size 4425293, node heap has 6279 buffer(s) 1025.21 hash searches/s, 183.05 non-hash searches/s --- LOG --- Log sequence number 26 971113886 Log flushed up to 26 971068576 Last checkpoint at 26 783474127 0 pending log writes, 0 pending chkp writes 50869793 log i/o's done, 249.83 log i/o's/second ---------------------- BUFFER POOL AND MEMORY ---------------------- Total memory allocated 2410801146; in additional pool allocated 16776704 Dictionary memory allocated 3471160 Buffer pool size 131072 Free buffers 1 Database pages 124792 Modified db pages 5956 Pending reads 0 Pending writes: LRU 0, flush list 0, single page 0 Pages read 207029, created 272093, written 5205093 0.02 reads/s, 0.21 creates/s, 3.11 writes/s Buffer pool hit rate 1000 / 1000 -------------- ROW OPERATIONS -------------- 0 queries inside InnoDB, 0 queries in queue 1 read views open inside InnoDB Main thread process no. 1822, id 140558278076160, state: sleeping Number of rows inserted 11130501, updated 44680288, deleted 390192, read 10375296284 3.94 inserts/s, 248.75 updates/s, 0.11 deletes/s, 64600.01 reads/s ---------------------------- END OF INNODB MONITOR OUTPUT ============================ | |
Автор: | Phricker [ 31 янв 2012, 19:46 ] |
Заголовок сообщения: | Re: Скрипт поведения на событие "Договор создан" |
На тестовом (только сегодня завел с нуля все), создал одну группу, один шаблон и скрипт поведения Код: import bitel.billing.server.script.bean.event.*; import bitel.billing.server.contract.bean.*; import java.sql.*; ContractParameterManager cpm = new ContractParameterManager( con ); PreparedStatement ps = con.prepareStatement( "UPDATE contract SET gr=gr|(1<<?) WHERE id=?" ); ps.setLong( 1, 11 ); ps.setInt( 2, event.getContractId() ); ps.executeUpdate(); ps.close(); Клиент виснет сразу же как нажму "Создать" |
Автор: | Phricker [ 31 янв 2012, 19:53 ] |
Заголовок сообщения: | Re: Скрипт поведения на событие "Договор создан" |
Код: 01-31/21:48:30 DEBUG ["http-bio-/0.0.0.0-8080"-exec-6] EventProcessor - Add bitel.billing.server.script.bean.ScriptMachineManager$2@9fbe184 to BG.Event.ru.bitel.bgbilling.kernel.script.common.ScriptFunctionModifiedEvent
01-31/21:48:30 DEBUG ["http-bio-/0.0.0.0-8080"-exec-6] ScriptMachine - Creating script machine for function: Function [id:1; title:Создание договора] 01-31/21:48:30 INFO [pool-1-thread-1] ScriptInstance - Eval script Function [id:1; title:Создание договора] 01-31/21:50:31 ERROR ["http-bio-/0.0.0.0-8080"-exec-6] ScriptMachine - Eval error: java.security.PrivilegedActionException: Sourced file: Function [id:1; title:Создание договора] : Method Invocation ps.executeUpdate : at Line: 9 : in file: Function [id:1; title:Создание договора] : ps .executeUpdate ( ) Target exception: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction java.util.concurrent.ExecutionException: java.security.PrivilegedActionException: Sourced file: Function [id:1; title:Создание договора] : Method Invocation ps.executeUpdate : at Line: 9 : in file: Function [id:1; title:Создание договора] : ps .executeUpdate ( ) Target exception: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:232) at java.util.concurrent.FutureTask.get(FutureTask.java:91) at bitel.billing.server.script.bean.ScriptMachine$ThreadedScriptMachine.runScriptImpl(ScriptMachine.java:267) at bitel.billing.server.script.bean.ScriptMachine.runScript(ScriptMachine.java:119) at bitel.billing.server.script.bean.event.EventProcessor.processContractEvent(EventProcessor.java:306) at bitel.billing.server.script.bean.event.EventProcessor.processEvent(EventProcessor.java:224) at bitel.billing.server.script.bean.event.EventProcessor.processEvent(EventProcessor.java:192) at bitel.billing.server.contract.action.ActionNewContract.doAction(ActionNewContract.java:104) at bitel.billing.server.Executer.doModule(Unknown Source) at bitel.billing.server.Executer$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:396) at bitel.billing.server.Executer.doPost(Unknown Source) at javax.servlet.http.HttpServlet.service(HttpServlet.java:641) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at bitel.billing.server.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:48) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:403) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:301) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:162) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) Caused by: java.security.PrivilegedActionException: Sourced file: Function [id:1; title:Создание договора] : Method Invocation ps.executeUpdate : at Line: 9 : in file: Function [id:1; title:Создание договора] : ps .executeUpdate ( ) Target exception: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:396) at bitel.billing.server.script.bean.ScriptMachine$ThreadedScriptMachine$1.call(ScriptMachine.java:243) at bitel.billing.server.script.bean.ScriptMachine$ThreadedScriptMachine$1.call(ScriptMachine.java:1) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) ... 3 more Caused by: Sourced file: Function [id:1; title:Создание договора] : Method Invocation ps.executeUpdate : at Line: 9 : in file: Function [id:1; title:Создание договора] : ps .executeUpdate ( ) Target exception: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:97) at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102) at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47) at bsh.Interpreter.eval(Interpreter.java:653) at ru.bitel.bgbilling.kernel.script.server.bean.ScriptInstance.eval(ScriptInstance.java:366) at bitel.billing.server.script.bean.ScriptMachine$SimpleScriptRunner.runScript(ScriptMachine.java:61) at bitel.billing.server.script.bean.ScriptMachine.runScriptImpl(ScriptMachine.java:180) at bitel.billing.server.script.bean.ScriptMachine$ThreadedScriptMachine.access$0(ScriptMachine.java:1) at bitel.billing.server.script.bean.ScriptMachine$ThreadedScriptMachine$1$1.run(ScriptMachine.java:248) at bitel.billing.server.script.bean.ScriptMachine$ThreadedScriptMachine$1$1.run(ScriptMachine.java:1) ... 9 more 01-31/21:50:31 INFO ["http-bio-/0.0.0.0-8080"-exec-6] ScriptMachine - Process time => 121030 |
Автор: | Phricker [ 31 янв 2012, 20:43 ] |
Заголовок сообщения: | Re: Скрипт поведения на событие "Договор создан" |
Так же не срабатывает событие "После действия" в конфиге сервера Код: action.event_contract_NewContract=after Скрипт тот же. Тупо ничего не делается. Если же заменить на событие Код: action.event_contract_UpdateContractPayment=after то по приходу платежа - группа назначается |
Автор: | stark [ 01 фев 2012, 11:52 ] |
Заголовок сообщения: | Re: Скрипт поведения на событие "Договор создан" |
обновление выложено. |
Автор: | Phricker [ 01 фев 2012, 12:49 ] |
Заголовок сообщения: | Re: Скрипт поведения на событие "Договор создан" |
stark ![]() ![]() ![]() ![]() Пашет вот так на ура Код: import bitel.billing.server.script.bean.event.*;
import bitel.billing.server.contract.bean.*; import java.sql.*; import bitel.billing.common.CommonUtils; import ru.bitel.bgbilling.kernel.module.server.bean.UserManager; import ru.bitel.bgbilling.kernel.module.common.bean.User; User user = new UserManager(con).getUsersMap().get(event.getUserId()); PreparedStatement ps = con.prepareStatement( "UPDATE contract SET gr=? WHERE id=?" ); ps.setLong( 1, user.getContractGroups() ); ps.setInt( 2, event.getContractId() ); ps.executeUpdate(); ps.close(); |
Автор: | stark [ 02 фев 2012, 16:33 ] |
Заголовок сообщения: | Re: Скрипт поведения на событие "Договор создан" |
Это было временное решение . Теперь проблему решили глобально для большинства обработчиков событий ядра , обновитесь еще раз. |
Автор: | Phricker [ 02 фев 2012, 16:45 ] |
Заголовок сообщения: | Re: Скрипт поведения на событие "Договор создан" |
и все сломается ![]() Хорошо, вечерком или завтра уже обновлюсь |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |