08-07-2014, 07:05 PM
Последние пару дней наблюдается вот такая проблема:
И вот такая
В логах mysql висит вот такие запросы по 50 секунд
Updating | UPDATE character_skills SET skill_level=5 WHERE skill_id=239 AND char_obj_id=268499297 AND class_index=1
После чего, выдает ошибку ГС, сервер начинает лагать и вылетает большая часть игроков.
Готов заплатить за решение проблемы
Помогает только ребут, после чего проблема возвращается
Лог ГС
Could not update item 268486052 in DB: Reason: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1084)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4232)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4164)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2615)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2776)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2838)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2082)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2334)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2262)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2246)
at com.jolbox.bonecp.PreparedStatementHandle.executeUpdate(PreparedStatementHandle.java:205)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateInDb(L2ItemInstance.java:1489)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1235)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1208)
at net.sf.l2j.gameserver.model.Inventory.setPaperdollItem(Inventory.java:745)
at net.sf.l2j.gameserver.model.Inventory.equipItem(Inventory.java:1144)
at net.sf.l2j.gameserver.model.Inventory.equipItemAndRecord(Inventory.java:951)
at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.useEquippableItem(L2PcInstance.java:1989)
at net.sf.l2j.gameserver.network.clientpackets.UseItem.runImpl(UseItem.java:125)
at net.sf.l2j.gameserver.network.clientpackets.L2GameClientPacket.run(L2GameClientPacket.java:51)
at org.jboss.netty.handler.execution.MemoryAwareThreadPoolExecutor$MemoryAwareRunnable.run(MemoryAwareThreadPoolExecutor.java:622)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Could not update item 268486025 in DB: Reason: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1084)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4232)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4164)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2615)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2776)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2838)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2082)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2334)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2262)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2246)
at com.jolbox.bonecp.PreparedStatementHandle.executeUpdate(PreparedStatementHandle.java:205)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateInDb(L2ItemInstance.java:1489)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1235)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1208)
at net.sf.l2j.gameserver.model.Inventory.setPaperdollItem(Inventory.java:745)
at net.sf.l2j.gameserver.model.Inventory.equipItem(Inventory.java:1121)
at net.sf.l2j.gameserver.model.Inventory.equipItemAndRecord(Inventory.java:951)
at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.useEquippableItem(L2PcInstance.java:1989)
at net.sf.l2j.gameserver.network.clientpackets.UseItem.runImpl(UseItem.java:125)
at net.sf.l2j.gameserver.network.clientpackets.L2GameClientPacket.run(L2GameClientPacket.java:51)
at org.jboss.netty.handler.execution.MemoryAwareThreadPoolExecutor$MemoryAwareRunnable.run(MemoryAwareThreadPoolExecutor.java:622)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Could not update item 268486052 in DB: Reason: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1084)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4232)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4164)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2615)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2776)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2838)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2082)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2334)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2262)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2246)
at com.jolbox.bonecp.PreparedStatementHandle.executeUpdate(PreparedStatementHandle.java:205)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateInDb(L2ItemInstance.java:1489)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1235)
at net.sf.l2j.gameserver.model.ItemContainer.updateDatabase(ItemContainer.java:628)
at net.sf.l2j.gameserver.model.ItemContainer.updateDatabase(ItemContainer.java:616)
at net.sf.l2j.gameserver.network.L2GameClient.saveCharToDisk(L2GameClient.java:566)
at net.sf.l2j.gameserver.network.L2GameClient.onDisconnection(L2GameClient.java:532)
at org.mmocore.network.MMOConnection.onDisconnection(MMOConnection.java:581)
at org.mmocore.network.SelectorThread.closeConnectionImpl(SelectorThread.java:893)
at org.mmocore.network.SelectorThread.readTCPPacket(SelectorThread.java:419)
at org.mmocore.network.SelectorThread.readPacket(SelectorThread.java:355)
at org.mmocore.network.SelectorThread.run(SelectorThread.java:223)
Could not update item 268486022 in DB: Reason: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1084)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4232)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4164)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2615)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2776)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2838)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2082)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2334)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2262)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2246)
at com.jolbox.bonecp.PreparedStatementHandle.executeUpdate(PreparedStatementHandle.java:205)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateInDb(L2ItemInstance.java:1489)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1235)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1208)
at net.sf.l2j.gameserver.model.Inventory.setPaperdollItem(Inventory.java:745)
at net.sf.l2j.gameserver.model.Inventory.equipItem(Inventory.java:1104)
at net.sf.l2j.gameserver.model.Inventory.equipItemAndRecord(Inventory.java:951)
at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.useEquippableItem(L2PcInstance.java:1989)
at net.sf.l2j.gameserver.network.clientpackets.UseItem.runImpl(UseItem.java:125)
at net.sf.l2j.gameserver.network.clientpackets.L2GameClientPacket.run(L2GameClientPacket.java:51)
at org.jboss.netty.handler.execution.MemoryAwareThreadPoolExecutor$MemoryAwareRunnable.run(MemoryAwareThreadPoolExecutor.java:622)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Error saving player character GwG: java.lang.NullPointerException
Could not update item 268559852 in DB: Reason: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1084)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4232)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4164)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2615)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2776)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2838)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2082)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2334)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2262)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2246)
at com.jolbox.bonecp.PreparedStatementHandle.executeUpdate(PreparedStatementHandle.java:205)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateInDb(L2ItemInstance.java:1489)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1235)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1208)
at net.sf.l2j.gameserver.model.Inventory.setPaperdollItem(Inventory.java:733)
at net.sf.l2j.gameserver.model.Inventory.unEquipItemInBodySlot(Inventory.java:938)
at net.sf.l2j.gameserver.model.Inventory.unEquipItemInBodySlotAndRecord(Inventory.java:835)
at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.useEquippableItem(L2PcInstance.java:1976)
at net.sf.l2j.gameserver.network.clientpackets.UseItem.runImpl(UseItem.java:125)
at net.sf.l2j.gameserver.network.clientpackets.L2GameClientPacket.run(L2GameClientPacket.java:51)
at org.jboss.netty.handler.execution.MemoryAwareThreadPoolExecutor$MemoryAwareRunnable.run(MemoryAwareThreadPoolExecutor.java:622)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Could not update item 268486052 in DB: Reason: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1084)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4232)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4164)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2615)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2776)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2838)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2082)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2334)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2262)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2246)
at com.jolbox.bonecp.PreparedStatementHandle.executeUpdate(PreparedStatementHandle.java:205)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateInDb(L2ItemInstance.java:1489)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1235)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1208)
at net.sf.l2j.gameserver.model.Inventory.setPaperdollItem(Inventory.java:745)
at net.sf.l2j.gameserver.model.Inventory.equipItem(Inventory.java:1144)
at net.sf.l2j.gameserver.model.Inventory.equipItemAndRecord(Inventory.java:951)
at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.useEquippableItem(L2PcInstance.java:1989)
at net.sf.l2j.gameserver.network.clientpackets.UseItem.runImpl(UseItem.java:125)
at net.sf.l2j.gameserver.network.clientpackets.L2GameClientPacket.run(L2GameClientPacket.java:51)
at org.jboss.netty.handler.execution.MemoryAwareThreadPoolExecutor$MemoryAwareRunnable.run(MemoryAwareThreadPoolExecutor.java:622)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1084)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4232)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4164)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2615)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2776)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2838)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2082)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2334)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2262)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2246)
at com.jolbox.bonecp.PreparedStatementHandle.executeUpdate(PreparedStatementHandle.java:205)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateInDb(L2ItemInstance.java:1489)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1235)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1208)
at net.sf.l2j.gameserver.model.Inventory.setPaperdollItem(Inventory.java:745)
at net.sf.l2j.gameserver.model.Inventory.equipItem(Inventory.java:1144)
at net.sf.l2j.gameserver.model.Inventory.equipItemAndRecord(Inventory.java:951)
at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.useEquippableItem(L2PcInstance.java:1989)
at net.sf.l2j.gameserver.network.clientpackets.UseItem.runImpl(UseItem.java:125)
at net.sf.l2j.gameserver.network.clientpackets.L2GameClientPacket.run(L2GameClientPacket.java:51)
at org.jboss.netty.handler.execution.MemoryAwareThreadPoolExecutor$MemoryAwareRunnable.run(MemoryAwareThreadPoolExecutor.java:622)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Could not update item 268486025 in DB: Reason: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1084)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4232)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4164)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2615)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2776)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2838)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2082)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2334)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2262)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2246)
at com.jolbox.bonecp.PreparedStatementHandle.executeUpdate(PreparedStatementHandle.java:205)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateInDb(L2ItemInstance.java:1489)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1235)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1208)
at net.sf.l2j.gameserver.model.Inventory.setPaperdollItem(Inventory.java:745)
at net.sf.l2j.gameserver.model.Inventory.equipItem(Inventory.java:1121)
at net.sf.l2j.gameserver.model.Inventory.equipItemAndRecord(Inventory.java:951)
at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.useEquippableItem(L2PcInstance.java:1989)
at net.sf.l2j.gameserver.network.clientpackets.UseItem.runImpl(UseItem.java:125)
at net.sf.l2j.gameserver.network.clientpackets.L2GameClientPacket.run(L2GameClientPacket.java:51)
at org.jboss.netty.handler.execution.MemoryAwareThreadPoolExecutor$MemoryAwareRunnable.run(MemoryAwareThreadPoolExecutor.java:622)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Could not update item 268486052 in DB: Reason: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1084)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4232)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4164)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2615)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2776)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2838)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2082)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2334)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2262)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2246)
at com.jolbox.bonecp.PreparedStatementHandle.executeUpdate(PreparedStatementHandle.java:205)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateInDb(L2ItemInstance.java:1489)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1235)
at net.sf.l2j.gameserver.model.ItemContainer.updateDatabase(ItemContainer.java:628)
at net.sf.l2j.gameserver.model.ItemContainer.updateDatabase(ItemContainer.java:616)
at net.sf.l2j.gameserver.network.L2GameClient.saveCharToDisk(L2GameClient.java:566)
at net.sf.l2j.gameserver.network.L2GameClient.onDisconnection(L2GameClient.java:532)
at org.mmocore.network.MMOConnection.onDisconnection(MMOConnection.java:581)
at org.mmocore.network.SelectorThread.closeConnectionImpl(SelectorThread.java:893)
at org.mmocore.network.SelectorThread.readTCPPacket(SelectorThread.java:419)
at org.mmocore.network.SelectorThread.readPacket(SelectorThread.java:355)
at org.mmocore.network.SelectorThread.run(SelectorThread.java:223)
Could not update item 268486022 in DB: Reason: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1084)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4232)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4164)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2615)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2776)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2838)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2082)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2334)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2262)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2246)
at com.jolbox.bonecp.PreparedStatementHandle.executeUpdate(PreparedStatementHandle.java:205)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateInDb(L2ItemInstance.java:1489)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1235)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1208)
at net.sf.l2j.gameserver.model.Inventory.setPaperdollItem(Inventory.java:745)
at net.sf.l2j.gameserver.model.Inventory.equipItem(Inventory.java:1104)
at net.sf.l2j.gameserver.model.Inventory.equipItemAndRecord(Inventory.java:951)
at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.useEquippableItem(L2PcInstance.java:1989)
at net.sf.l2j.gameserver.network.clientpackets.UseItem.runImpl(UseItem.java:125)
at net.sf.l2j.gameserver.network.clientpackets.L2GameClientPacket.run(L2GameClientPacket.java:51)
at org.jboss.netty.handler.execution.MemoryAwareThreadPoolExecutor$MemoryAwareRunnable.run(MemoryAwareThreadPoolExecutor.java:622)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Error saving player character GwG: java.lang.NullPointerException
Could not update item 268559852 in DB: Reason: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1084)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4232)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4164)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2615)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2776)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2838)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2082)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2334)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2262)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2246)
at com.jolbox.bonecp.PreparedStatementHandle.executeUpdate(PreparedStatementHandle.java:205)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateInDb(L2ItemInstance.java:1489)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1235)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1208)
at net.sf.l2j.gameserver.model.Inventory.setPaperdollItem(Inventory.java:733)
at net.sf.l2j.gameserver.model.Inventory.unEquipItemInBodySlot(Inventory.java:938)
at net.sf.l2j.gameserver.model.Inventory.unEquipItemInBodySlotAndRecord(Inventory.java:835)
at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.useEquippableItem(L2PcInstance.java:1976)
at net.sf.l2j.gameserver.network.clientpackets.UseItem.runImpl(UseItem.java:125)
at net.sf.l2j.gameserver.network.clientpackets.L2GameClientPacket.run(L2GameClientPacket.java:51)
at org.jboss.netty.handler.execution.MemoryAwareThreadPoolExecutor$MemoryAwareRunnable.run(MemoryAwareThreadPoolExecutor.java:622)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Could not update item 268486052 in DB: Reason: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1084)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4232)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4164)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2615)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2776)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2838)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2082)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2334)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2262)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2246)
at com.jolbox.bonecp.PreparedStatementHandle.executeUpdate(PreparedStatementHandle.java:205)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateInDb(L2ItemInstance.java:1489)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1235)
at net.sf.l2j.gameserver.model.L2ItemInstance.updateDatabase(L2ItemInstance.java:1208)
at net.sf.l2j.gameserver.model.Inventory.setPaperdollItem(Inventory.java:745)
at net.sf.l2j.gameserver.model.Inventory.equipItem(Inventory.java:1144)
at net.sf.l2j.gameserver.model.Inventory.equipItemAndRecord(Inventory.java:951)
at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.useEquippableItem(L2PcInstance.java:1989)
at net.sf.l2j.gameserver.network.clientpackets.UseItem.runImpl(UseItem.java:125)
at net.sf.l2j.gameserver.network.clientpackets.L2GameClientPacket.run(L2GameClientPacket.java:51)
at org.jboss.netty.handler.execution.MemoryAwareThreadPoolExecutor$MemoryAwareRunnable.run(MemoryAwareThreadPoolExecutor.java:622)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
И вот такая
Лог ГС
Could not store char base data: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
could not set char online status:java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
Error could not store char skills: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
Error could not store char skills: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
could not set char online status:java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
Error could not store char skills: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
Error could not store char skills: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
В логах mysql висит вот такие запросы по 50 секунд
Updating | UPDATE character_skills SET skill_level=5 WHERE skill_id=239 AND char_obj_id=268499297 AND class_index=1
После чего, выдает ошибку ГС, сервер начинает лагать и вылетает большая часть игроков.
Готов заплатить за решение проблемы
Помогает только ребут, после чего проблема возвращается