BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 20 окт 2021, 00:28

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: updateResourceUse: Deadlock found when trying to get lock
СообщениеДобавлено: 04 дек 2019, 12:50 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Сервер: вер. 7.0.1460 / 21.05.2019 15:50:39
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_144

phone: вер. 7.0.328 / 20.04.2019 02:12:25

При переоформлении суба с телефонией вылез странный дедлок:
Код:
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream - com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Deadlock found when trying to get lock; try restarting transaction
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at com.mysql.jdbc.Util.handleNewInstance(Util.java:404)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at com.mysql.jdbc.Util.getInstance(Util.java:387)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:946)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3878)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3814)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2478)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2625)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2551)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1861)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at com.mysql.jdbc.PreparedStatement.executeUpdateInternal(PreparedStatement.java:2073)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at com.mysql.jdbc.PreparedStatement.executeUpdateInternal(PreparedStatement.java:2009)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at com.mysql.jdbc.PreparedStatement.executeLargeUpdate(PreparedStatement.java:5094)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1994)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at bitel.billing.server.admin.resource.bean.ResourceUseManager.updateResourceUse(ResourceUseManager.java:64)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at bitel.billing.server.phone.bean.ClientItemManager.realUpdate(ClientItemManager.java:1376)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at bitel.billing.server.phone.Module.moduleAction(Module.java:242)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at ru.bitel.bgbilling.kernel.event.processors.CommonKernelEventProcessor.notify(CommonKernelEventProcessor.java:166)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at ru.bitel.bgbilling.kernel.event.processors.CommonKernelEventProcessor.notify(CommonKernelEventProcessor.java:42)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at ru.bitel.bgbilling.kernel.event.LocalEventProcessor.request(LocalEventProcessor.java:240)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at ru.bitel.bgbilling.kernel.event.EventProcessor.request(EventProcessor.java:1055)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at ru.bitel.bgbilling.kernel.event.EventProcessor.request(EventProcessor.java:1024)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at bitel.billing.server.contract.action.ActionWrapContract.contractCopy(ActionWrapContract.java:263)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at bitel.billing.server.contract.action.ActionWrapContract.doAction(ActionWrapContract.java:132)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at bitel.billing.server.Executer.doModule(SourceFile:615)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at bitel.billing.server.Executer$1.run(SourceFile:212)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at java.security.AccessController.doPrivileged(Native Method)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at javax.security.auth.Subject.doAs(Subject.java:422)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at bitel.billing.server.Executer.doPost(SourceFile:206)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at bitel.billing.server.Executer.doGet(SourceFile:146)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at javax.servlet.http.HttpServlet.service(HttpServlet.java:620)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at ru.bitel.common.server.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:54)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] LoggingPrintStream -     at java.lang.Thread.run(Thread.java:748)



Ну а дальше уже ожидаемо:
Код:
12-04/11:53:57 ERROR [http-bio-0.0.0.0-8080-exec-4522] CommonKernelEventProcessor - Обнаружен конфликт номеров/портов с договор(ами) 2-2019-004
ru.bitel.bgbilling.common.BGException: Обнаружен конфликт номеров/портов с договор(ами) 2-2019-004


Почему может возникнуть MySQLTransactionRollbackException на простом удалении по ключу resource_id ?

Код:
| innodb_version          | 5.6.20-68.0                                      |
| protocol_version        | 10                                               |
| version                 | 5.6.20-68.0-log                                  |
| version_comment         | Percona Server (GPL), Release 68.0, Revision 656 |
| version_compile_machine | x86_64                                           |
| version_compile_os      | debian-linux-gnu                                 |


Код:
CREATE TABLE `number_resource_use_18` (
  `resource_id` int(11) NOT NULL,
  `date1` date DEFAULT NULL,
  `date2` date DEFAULT NULL,
  `cid` int(11) NOT NULL,
  `date_reserve` date DEFAULT NULL,
  `comment` varchar(255) DEFAULT NULL,
  `reserve_user_id` int(11) DEFAULT NULL,
  KEY `resource_id` (`resource_id`),
  KEY `date_reserve` (`date_reserve`),
  KEY `date1` (`date1`),
  KEY `date2` (`date2`),
  KEY `dsi_check` (`resource_id`,`date2`,`date_reserve`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8


в number_resource_use_18 171900 записей


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
POWERED_BY
Русская поддержка phpBB
[ Time : 0.043s | 20 Queries | GZIP : On ]