Page 1 of 1

Console Messages (Bug?)

Posted: Mon Apr 14, 2014 2:46 pm
by u3games
» Find Revision
L2J Revision Number: 6490
L2JDP Revision Number: 10266
[14 abr 2:11:52] Exception processing bypass from player xxxxxx: npc_268438028_Quest SeedOfInfinity
java.lang.NullPointerException
at handlers.bypasshandlers.QuestLink.showQuestWindow(QuestLink.java:204)
at handlers.bypasshandlers.QuestLink.useBypass(QuestLink.java:68)
at com.l2jserver.gameserver.model.actor.L2Npc.onBypassFeedback(L2Npc.java:905)
at com.l2jserver.gameserver.network.clientpackets.RequestBypassToServer.runImpl(RequestBypassToServer.java:198)
at com.l2jserver.gameserver.network.clientpackets.L2GameClientPacket.run(L2GameClientPacket.java:70)
at com.l2jserver.gameserver.network.L2GameClient.run(L2GameClient.java:1132)
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:744)
[14 abr 3:40:04] L2World: Previous object: Ancient Book: Divine Inspiration (Manuscript)(8620)[268568342] already exist in OID map!
[14 abr 3:40:04] java.lang.Thread.getStackTrace(Thread.java:1588)
com.l2jserver.gameserver.model.L2World.storeObject(L2World.java:113)
com.l2jserver.gameserver.datatables.ItemTable.createItem(ItemTable.java:252)
com.l2jserver.gameserver.model.itemcontainer.ItemContainer.addItem(ItemContainer.java:305)
com.l2jserver.gameserver.model.itemcontainer.PcInventory.addItem(PcInventory.java:540)
com.l2jserver.gameserver.model.itemcontainer.ItemContainer.transferItem(ItemContainer.java:392)
com.l2jserver.gameserver.network.clientpackets.SendWareHouseWithDrawList.runImpl(SendWareHouseWithDrawList.java:179)
com.l2jserver.gameserver.network.clientpackets.L2GameClientPacket.run(L2GameClientPacket.java:70)
com.l2jserver.gameserver.network.L2GameClient.run(L2GameClient.java:1132)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
java.lang.Thread.run(Thread.java:744)
These messages are repeated frequently in the gameserver.

L2j-Server H5, last vers.

Re: Console Messages (Bug?)

Posted: Tue Apr 15, 2014 6:07 pm
by CostyKiller
I have same errors too. How we can fix this?

Code: Select all

 [15 Apr 21:01:32] L2World: Current object: Talon of Stakato(7250)[268926395] already exist in OID map![15 Apr 21:01:32] java.lang.Thread.getStackTrace(Unknown Source)com.l2jserver.gameserver.model.L2World.storeObject(L2World.java:105)com.l2jserver.gameserver.model.itemcontainer.Inventory.restore(Inventory.java:1681)com.l2jserver.gameserver.model.itemcontainer.PcInventory.restore(PcInventory.java:798)com.l2jserver.gameserver.model.actor.instance.L2PcInstance.restore(L2PcInstance.java:7240)com.l2jserver.gameserver.model.actor.instance.L2PcInstance.load(L2PcInstance.java:1078)com.l2jserver.gameserver.network.L2GameClient.loadCharFromDisk(L2GameClient.java:610)com.l2jserver.gameserver.network.clientpackets.CharacterSelect.runImpl(CharacterSelect.java:145)com.l2jserver.gameserver.network.clientpackets.L2GameClientPacket.run(L2GameClientPacket.java:70)com.l2jserver.gameserver.network.L2GameClient.run(L2GameClient.java:1132)java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)java.lang.Thread.run(Unknown Source) 

Code: Select all

[15 Apr 21:01:32] L2World: Previous object: Talon of Stakato(7250)[268926395] already exist in OID map![15 Apr 21:01:32] java.lang.Thread.getStackTrace(Unknown Source)com.l2jserver.gameserver.model.L2World.storeObject(L2World.java:113)com.l2jserver.gameserver.datatables.ItemTable.createItem(ItemTable.java:252)com.l2jserver.gameserver.model.itemcontainer.ItemContainer.addItem(ItemContainer.java:305)com.l2jserver.gameserver.model.itemcontainer.PcInventory.addItem(PcInventory.java:540)com.l2jserver.gameserver.model.actor.instance.L2PcInstance.addItem(L2PcInstance.java:3529)com.l2jserver.gameserver.model.quest.Quest.giveItemRandomly(Quest.java:3511)com.l2jserver.gameserver.model.quest.Quest.giveItemRandomly(Quest.java:3457)quests.Q00629_CleanUpTheSwampOfScreams.Q00629_CleanUpTheSwampOfScreams.onKill(Q00629_CleanUpTheSwampOfScreams.java:132)com.l2jserver.gameserver.model.quest.Quest.notifyKill(Quest.java:595)com.l2jserver.gameserver.model.actor.tasks.attackable.OnKillNotifyTask.run(OnKillNotifyTask.java:48)com.l2jserver.gameserver.ThreadPoolManager$RunnableWrapper.run(ThreadPoolManager.java:92)java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)java.util.concurrent.FutureTask.run(Unknown Source)java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(Unknown Source)java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)java.lang.Thread.run(Unknown Source) [15 Apr 21:01:32] ---------------------- End ---------------------

Re: Console Messages (Bug?)

Posted: Tue Apr 15, 2014 7:32 pm
by u3games
Yes... and causes lag on the server.

Please, review it ;)

Re: Console Messages (Bug?)

Posted: Wed Apr 16, 2014 1:54 am
by Hyrelius
Actually the reason these messages appear, is, because items are attempted to load twice for whatever reason.. meaning, that if they were loaded into L2World already, they can't be loaded again (which is what the message says).
I came across this problem when I wrote my own warehouse, which supports searching as well as sorting and account-transactions.

One could probably add a check to the storeObject-method, checking whether the object already exists at where ever it's being written to before actually storing it (again). This check might cost some performance though, so perhaps it's quicker the way it's now.
Also: the server shouldn't lag because of a log output - even if it's frequent.

Ah - by the way - sometimes these kind of things happen if a player gets disconnected due to client- or connection-crash, because when this happens sometimes not all player-related data is unloaded properly (before it gets reloaded on player relog). This also might result in this (storeObject) or a similar (probably something load-related) error.