Page MenuHomeSchine - Phabricator

Starmade | Null pointer in logfile when charging shields
Closed, FinishedPublic

Description

Seeing frequent java.lang.NullPointerException errors on an exported sector. Please contact me via Slack for the sector, log, and jstack download URLs.

[2016-04-26 00:36:26] java.lang.NullPointerException
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ShieldAddOn.useNormalRecovery(SourceFile:280)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ShieldAddOn.onHit(SourceFile:265)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ShieldAddOn.checkRailDockingDamageRecursive(SourceFile:308)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ShieldAddOn.checkRailIntercept(SourceFile:159)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ShieldAddOn.handleShieldHit(SourceFile:90)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ShipManagerContainer.handleShieldHit(SourceFile:480)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.EditableSendableSegmentController.handleBeamDamage(SourceFile:1815)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.beam.damageBeam.DamageBeamHandler.onBeamHit(SourceFile:52)
[2016-04-26 00:36:26]   at org.schema.game.common.data.element.AbstractBeamHandler.updateBeam(SourceFile:474)
[2016-04-26 00:36:26]   at org.schema.game.common.data.element.AbstractBeamHandler.update(SourceFile:308)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.beam.damageBeam.DamageBeamCollectionManager.update(SourceFile:65)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ManagerModuleCollection.update(SourceFile:155)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ManagerContainer.updateLocal(SourceFile:1719)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ShipManagerContainer.updateLocal(SourceFile:714)
[2016-04-26 00:36:26]   at obfuscated.SK.updateLocal(SourceFile:527)
[2016-04-26 00:36:26]   at org.schema.game.server.controller.GameServerController.update(SourceFile:1284)
[2016-04-26 00:36:26]   at org.schema.schine.network.server.ServerController.run(SourceFile:256)
[2016-04-26 00:36:26]   at java.lang.Thread.run(Thread.java:745)
[2016-04-26 00:36:26] java.lang.NullPointerException
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ShieldAddOn.useNormalRecovery(SourceFile:280)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ShieldAddOn.onHit(SourceFile:265)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ShieldAddOn.checkRailDockingDamageRecursive(SourceFile:308)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ShieldAddOn.checkRailIntercept(SourceFile:159)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ShieldAddOn.handleShieldHit(SourceFile:90)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ShipManagerContainer.handleShieldHit(SourceFile:480)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.EditableSendableSegmentController.handleBeamDamage(SourceFile:1815)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.beam.damageBeam.DamageBeamHandler.onBeamHit(SourceFile:52)
[2016-04-26 00:36:26]   at org.schema.game.common.data.element.AbstractBeamHandler.updateBeam(SourceFile:474)
[2016-04-26 00:36:26]   at org.schema.game.common.data.element.AbstractBeamHandler.update(SourceFile:308)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.beam.damageBeam.DamageBeamCollectionManager.update(SourceFile:65)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ManagerModuleCollection.update(SourceFile:155)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ManagerContainer.updateLocal(SourceFile:1719)
[2016-04-26 00:36:26]   at org.schema.game.common.controller.elements.ShipManagerContainer.updateLocal(SourceFile:714)
[2016-04-26 00:36:26]   at obfuscated.SK.updateLocal(SourceFile:527)
[2016-04-26 00:36:26]   at org.schema.game.server.controller.GameServerController.update(SourceFile:1284)
[2016-04-26 00:36:26]   at org.schema.schine.network.server.ServerController.run(SourceFile:256)
[2016-04-26 00:36:26]   at java.lang.Thread.run(Thread.java:745)

Details

Task Type
Bug
Testing Results
Affected Gamemode(s)
Single and Multi
Reproducible
Yes
Last tested (version)
0.197.51 (DEV)
Category
Engine
Hardware/Software/System
OS-Specific
No
Hardware-Specific
No
Video Card Vendor
uncertain
Steps to reproduce
  1. build a thing with a few power, shield and shield charge blocks
  2. wait for them to charge fully exit and restart the game
  3. exit the game again and check logfile ... there shouldnt be Nullpointer
  4. restart the game and shot the test ship with the handlaser to cause shield charging
  5. exit the game and check the logfile for the nullpointer that should now be there
[2016-04-27 23:31:51] java.lang.NullPointerException
[2016-04-27 23:31:51] 	at org.schema.game.common.controller.elements.ShieldAddOn.useNormalRecovery(SourceFile:280)
[2016-04-27 23:31:51] 	at org.schema.game.common.controller.elements.ShieldAddOn.onHit(SourceFile:265)
[2016-04-27 23:31:51] 	at org.schema.game.common.controller.elements.ShieldAddOn.onHit(SourceFile:275)
[2016-04-27 23:31:51] 	at org.schema.game.common.controller.elements.ShieldAddOn.handleShieldHit(SourceFile:105)
[2016-04-27 23:31:51] 	at org.schema.game.common.controller.elements.ShipManagerContainer.handleShieldHit(SourceFile:480)
[2016-04-27 23:31:51] 	at org.schema.game.common.controller.elements.ProjectileController.handleCubeCollision(SourceFile:387)
[2016-04-27 23:31:51] 	at org.schema.game.common.controller.elements.ProjectileController.checkCollision(SourceFile:231)
[2016-04-27 23:31:51] 	at org.schema.game.common.controller.elements.ProjectileController.updateParticle(SourceFile:777)
[2016-04-27 23:31:51] 	at obfuscated.azS.update(SourceFile:167)
[2016-04-27 23:31:51] 	at org.schema.game.common.controller.elements.ProjectileController.update(SourceFile:820)
[2016-04-27 23:31:51] 	at obfuscated.C.update(SourceFile:1120)
[2016-04-27 23:31:51] 	at obfuscated.avy.a(SourceFile:1176)
[2016-04-27 23:31:51] 	at obfuscated.avy.a(SourceFile:1167)
[2016-04-27 23:31:51] 	at obfuscated.C.h(SourceFile:2858)
[2016-04-27 23:31:51] 	at obfuscated.QT.run(SourceFile:92)
[2016-04-27 23:31:51] 	at java.lang.Thread.run(Unknown Source)
Serverconfig (server.cfg)
<replace this line with the file content>
Clientconfig (settings.cfg)
<replace this line with the file content>

Related Objects

Event Timeline

Restricted Application added a project: Issue Navigation. · View Herald TranscriptApr 26 2016, 12:48 AM
SmilingDemon shifted this object from the S1 Public space to the S3 Starmade space.Apr 26 2016, 2:54 PM
SmilingDemon changed the visibility from "Custom Policy" to "Public (No Login Required)".
SmilingDemon changed the edit policy from "Task Author" to "Starmade (Project)".
SmilingDemon claimed this task.
SmilingDemon triaged this task as High priority.
Restricted Application added a subscriber: AndyP. · View Herald TranscriptApr 26 2016, 2:54 PM

Please add the exported Sector with drag and drop so we can take a look

@spunkie invested some time chasing this bug with me last night. Tagging him for inclusion.

erthparadine added a comment.EditedApr 27 2016, 4:41 PM

This is an exported sector of where you'll see the NullPointerException in server logs, upon shooting the station within.

On our production server stars.bitminery.com:4242 , this is sector 7 4 0

SmilingDemon renamed this task from Null pointer to Null pointer w.Apr 27 2016, 9:32 PM
SmilingDemon updated the task description. (Show Details)Apr 27 2016, 9:41 PM
SmilingDemon edited Steps to reproduce. (Show Details)
SmilingDemon changed Affected Gamemode(s) from none/unspecified to Single and Multi.
SmilingDemon changed Reproducible from uncertain to Yes.
SmilingDemon set Last tested (version) to 0.197.51 (DEV).
SmilingDemon changed Category from none/unspecified to Engine.
SmilingDemon edited Steps to reproduce. (Show Details)
SmilingDemon renamed this task from Null pointer w to Null pointer in logfile when charging shields.
SmilingDemon changed the task status from Open to In Queue (Game).
Restricted Application edited projects, added Starmade, Game Development; removed Issue Navigation. · View Herald TranscriptApr 27 2016, 9:43 PM
erthparadine added a comment.EditedApr 28 2016, 12:49 AM

I should probably point out that this NullPointer was initially discovered while investigating odd server slowdowns. The error will often be written dozens of times per second to logs, and that has the apparent effect of impairing response times for all players.

AndyP changed the task status from In Queue (Game) to In Queue.Mar 10 2017, 5:05 PM
Restricted Application added a project: Engine. · View Herald TranscriptMar 10 2017, 5:05 PM
AndyP edited projects, added Engine (Crashes); removed Engine.Mar 15 2017, 6:22 PM
schema changed the task status from In Queue to Resolved.Mar 21 2017, 5:48 AM
Restricted Application added a project: Quality Assurance. · View Herald TranscriptMar 21 2017, 5:48 AM
lancake added subscribers: SmilingDemon, lancake.
lancake claimed this task.

-QA Testing-

Can't reproduce anymore, fix confirmed.

lancake closed this task as Closed.Apr 28 2017, 1:24 PM
Restricted Application removed a project: Quality Assurance. · View Herald TranscriptApr 28 2017, 1:24 PM
Restricted Application removed a subscriber: AndyP. · View Herald Transcript