Перейти к содержанию
Авторизация  
VoK

Bonecp Или Getconnection() Failed, Trying Again Null

Рекомендуемые сообщения

Переодически ловлю 17:39:50 WARN DatabaseFactory: getConnection() failed, trying again null и ГС ложится.

Я так понимаю что это кривое состояние очереди на момент попытки блокировки и boneCP падает ?

А как это исправить ? Может как-то иначе конфигурировать BoneCP ?

Сорсы acis, boneCP 0.8.0

После добавления стектрейса получил это:

java.sql.SQLException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
at com.jolbox.bonecp.PoolUtil.generateSQLException(PoolUtil.java:192)
at com.jolbox.bonecp.DefaultConnectionStrategy.getConnectionInternal(DefaultConnectionStrategy.java:95)
at com.jolbox.bonecp.AbstractConnectionStrategy.getConnection(AbstractConnectionStrategy.java:90)
at com.jolbox.bonecp.BoneCP.getConnection(BoneCP.java:553)
at l2s.commons.db.DatabaseFactory.getConnection(DatabaseFactory.java:104)
at l2s.gameserver.model.L2ItemInstance.updateInDb(L2ItemInstance.java:899)
at l2s.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:816)
at l2s.gameserver.model.itemcontainer.ItemContainer.addItem(ItemContainer.java:313)
at l2s.gameserver.model.itemcontainer.PcInventory.addItem(PcInventory.java:485)
at l2s.gameserver.model.actor.instance.L2PcInstance.addItem(L2PcInstance.java:2718)
at l2s.gameserver.model.L2Party.distributeItem(L2Party.java:592)
at l2s.gameserver.model.actor.instance.L2PcInstance.doAutoLoot(L2PcInstance.java:3537)
at l2s.gameserver.model.actor.L2Attackable.doItemDrop(L2Attackable.java:1190)
at l2s.gameserver.model.actor.L2Attackable.doItemDrop(L2Attackable.java:1127)
at l2s.gameserver.model.actor.L2Attackable.calculateRewards(L2Attackable.java:456)
at l2s.gameserver.model.actor.L2Character.doDie(L2Character.java:1554)
at l2s.gameserver.model.actor.L2Npc.doDie(L2Npc.java:1348)
at l2s.gameserver.model.actor.L2Attackable.doDie(L2Attackable.java:363)
at l2s.gameserver.model.actor.instance.L2MonsterInstance.doDie(L2MonsterInstance.java:130)
at l2s.gameserver.model.actor.status.CharStatus.reduceHp(CharStatus.java:201)
at l2s.gameserver.model.actor.status.NpcStatus.reduceHp(NpcStatus.java:55)
at l2s.gameserver.model.actor.status.AttackableStatus.reduceHp(AttackableStatus.java:57)
at l2s.gameserver.model.actor.L2Character.reduceCurrentHp(L2Character.java:5097)
at l2s.gameserver.model.actor.L2Attackable.reduceCurrentHp(L2Attackable.java:345)
at l2s.gameserver.model.actor.L2Attackable.reduceCurrentHp(L2Attackable.java:296)
at l2s.gameserver.handler.skill.impl.Mdam.useSkill(Mdam.java:84)
at l2s.gameserver.model.actor.L2Character.callSkill(L2Character.java:4660)
at l2s.gameserver.model.actor.L2Character.onMagicHitTimer(L2Character.java:4406)
at l2s.gameserver.model.actor.L2Character$MagicUseTask.run(L2Character.java:5418)
at l2s.gameserver.ThreadPoolManager$RunnableWrapper.run(ThreadPoolManager.java:87)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.InterruptedException
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.reportInterruptAfterWait(AbstractQueuedSynchronizer.java:2014)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2088)
at java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467)
at com.jolbox.bonecp.DefaultConnectionStrategy.getConnectionInternal(DefaultConnectionStrategy.java:82)
... 35 more
17:39:35 WARN DatabaseFactory: getConnection() failed, trying again null
java.sql.SQLException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
at com.jolbox.bonecp.PoolUtil.generateSQLException(PoolUtil.java:192)
at com.jolbox.bonecp.DefaultConnectionStrategy.getConnectionInternal(DefaultConnectionStrategy.java:95)
at com.jolbox.bonecp.AbstractConnectionStrategy.getConnection(AbstractConnectionStrategy.java:90)
at com.jolbox.bonecp.BoneCP.getConnection(BoneCP.java:553)
at l2s.commons.db.DatabaseFactory.getConnection(DatabaseFactory.java:104)
at l2s.gameserver.model.L2ItemInstance.updateInDb(L2ItemInstance.java:899)
at l2s.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:816)
at l2s.gameserver.model.itemcontainer.ItemContainer.addItem(ItemContainer.java:313)
at l2s.gameserver.model.itemcontainer.PcInventory.addItem(PcInventory.java:485)
at l2s.gameserver.model.actor.instance.L2PcInstance.addItem(L2PcInstance.java:2718)
at l2s.gameserver.skills.l2skills.L2SkillCreateItem.useSkill(L2SkillCreateItem.java:73)
at l2s.gameserver.model.actor.L2Character.callSkill(L2Character.java:4662)
at l2s.gameserver.model.actor.L2Character.onMagicHitTimer(L2Character.java:4406)
at l2s.gameserver.model.actor.L2Character$MagicUseTask.run(L2Character.java:5418)
at l2s.gameserver.ThreadPoolManager$RunnableWrapper.run(ThreadPoolManager.java:87)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.InterruptedException
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.reportInterruptAfterWait(AbstractQueuedSynchronizer.java:2014)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2088)
at java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467)
at com.jolbox.bonecp.DefaultConnectionStrategy.getConnectionInternal(DefaultConnectionStrategy.java:82)
... 20 more
17:39:50 WARN DatabaseFactory: getConnection() failed, trying again null

Изменено пользователем VoK

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подробнее:

Есть: Devastated (ACIS) + mysql 5.5 + ubuntu.

Файлы настроек: https://yadi.sk/d/sKSayX2gbwDjg

В datatable.xml закомментил две строки:

<property name="releaseHelperThreads">3</property>

<property name="statementReleaseHelperThreads">0</property>

Так как на них ругался ГС на старте.

Но все равно возникли проблемы с базой. В ГС пишет следующее и через некоторое время с сопутствующими фризами сервер "падает".

11:17:08 WARN BoneCP detected an unclosed connection and will now attempt to close it for you. You should be closing this connection in your application - enable connectionWatch for additional debugging assistance. 

или

17:52:26 ERROR Could not update item Adena (57) in DB: Reason: Lock wait timeout exceeded; try restarting transaction 

 

Пытался ставить boneCP 0.8.0 - не сработало.

Недавно нагуглил и поставил

innodb_lock_wait_timeout=120

посмотрим сколько проживет.

Пожалуйста помогите, никак не могу разобраться.

 

Добавлено через 2 часа 39 минут

После установки innodb_lock_wait_timeout=120

Сервер вообще заглох. Началось с фризов 10-15 минут, а потом встал.

При чем логи чистые. И мускуль отзывается.

Что это за напасть такая?

Изменено пользователем VoK

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Решил прикрутив с3р0 пул для databasefactory.

16 часов - полет нормальный.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...