djimbo 3 Опубликовано 12 августа, 2014 Pwsoft. Помогите разобрать ошибки из ГСа. 1: Could not update item 268566508 in DB: Reason: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed. com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:526) at com.mysql.jdbc.Util.handleNewInstance(Util.java:409) at com.mysql.jdbc.Util.getInstance(Util.java:384) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1013) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:973) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:918) at com.mysql.jdbc.ConnectionImpl.throwConnectionClosedException(ConnectionImpl.java:1321) at com.mysql.jdbc.ConnectionImpl.checkClosed(ConnectionImpl.java:1313) at com.mysql.jdbc.ConnectionImpl.prepareStatement(ConnectionImpl.java:4532) at com.mysql.jdbc.ConnectionImpl.prepareStatement(ConnectionImpl.java:4497) at com.jolbox.bonecp.ConnectionHandle.prepareStatement(ConnectionHandle.java:1024) at net.sf.l2j.mysql.Connect.prepareStatement(Connect.java:44) at net.sf.l2j.gameserver.model.L2ItemInstance.updateInDb(L2ItemInstance.java:1476) at net.sf.l2j.gameserver.model.L2ItemInstance.access$000(L2ItemInstance.java:37) at net.sf.l2j.gameserver.model.L2ItemInstance$LazyUpdateInDb.updateInDb(L2ItemInstance.java:175) at net.sf.l2j.gameserver.model.L2ItemInstance$LazyUpdateInDb.run(L2ItemInstance.java:167) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:178) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:292) 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) 2: что-то с дедлоком. В конфиге server.cfg DeadLockCheck=10000 Вроде не делал релоады в игре. Deadlocked Thread(s) ERROR:Thread[EffectsSTPool-447537,6,EffectsSTPool] at net.sf.l2j.gameserver.model.L2Character.removeEffect(L2Character.java:2603) at net.sf.l2j.gameserver.model.L2Effect.stopEffectTask(L2Effect.java:367) at net.sf.l2j.gameserver.model.L2Effect.scheduleEffect(L2Effect.java:462) at net.sf.l2j.gameserver.model.L2Effect$EffectTask.run(L2Effect.java:143) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:178) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:292) 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) Kill deadlocked Thread(s)... Done. Кто расскажет, как избавится от них? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Boolean 121 Опубликовано 12 августа, 2014 Посмотрите внимательно самую первую строку. В бд нету итема с айди 268566508 + айди имеет много символов. Вспмните после чего появилась данная ошибка.. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
WoWan-SM 51 Опубликовано 12 августа, 2014 1. Could not update item 268566508 in DB: Reason: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed. Не выполнить команду UPDATE для итема 268566508 в БД, потому что соединение уже закрыто. Проверяйте где находятся у вас getConnection() и connection.close() Как у вас сейчас: getConnection(); connection.close(); UPDATE; Как должно быть: getConnection(); UPDATE; connection.close(); 2. at net.sf.l2j.gameserver.model.L2Character.removeEffect(L2Character.java:2603) Ищем http://habrahabr.ru/post/89690/ и устраняем дедлок http://hashcode.ru/questions/306869/java-почему-происходит-deadlock Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты