dice-group / dice-group/Squirrel
Domain logging crashes with NullPointerException
- Dominant language
- Java
- Stars
- 25
- Forks
- 19
- PR merge metrics
- No merged PRs in 30d
Description
### Problem
In the 3rd run, worker 2 crashes because of a NullPointerException.
```
{"log":"2017-10-02 12:27:07,145 [main] ERROR [o.a.s.s.w.i.WorkerImpl ] - \u003cGot a severe exception. Aborting.\u003e\n","stream":"stdout","time":"2017-10-02T12:27:07.147686523Z"}
{"log":"java.lang.NullPointerException\n","stream":"stdout","time":"2017-10-02T12:27:07.147747902Z"}
{"log":"\u0009at java.io.Writer.write(Writer.java:157)\n","stream":"stdout","time":"2017-10-02T12:27:07.14775574Z"}
{"log":"\u0009at org.aksw.simba.squirrel.log.DomainLogger.next(DomainLogger.java:64)\n","stream":"stdout","time":"2017-10-02T12:27:07.147763029Z"}
{"log":"\u0009at org.aksw.simba.squirrel.log.DomainLogger.next(DomainLogger.java:17)\n","stream":"stdout","time":"2017-10-02T12:27:07.147770383Z"}
{"log":"\u0009at org.aksw.simba.squirrel.worker.impl.WorkerImpl.sendNewUris(WorkerImpl.java:159)\n","stream":"stdout","time":"2017-10-02T12:27:07.147778616Z"}
{"log":"\u0009at org.aksw.simba.squirrel.worker.impl.WorkerImpl.performCrawling(WorkerImpl.java:142)\n","stream":"stdout","time":"2017-10-02T12:27:07.1477857Z"}
{"log":"\u0009at org.aksw.simba.squirrel.worker.impl.WorkerImpl.crawl(WorkerImpl.java:105)\n","stream":"stdout","time":"2017-10-02T12:27:07.147792535Z"}
{"log":"\u0009at org.aksw.simba.squirrel.worker.impl.WorkerImpl.run(WorkerImpl.java:90)\n","stream":"stdout","time":"2017-10-02T12:27:07.147799415Z"}
{"log":"\u0009at org.aksw.simba.squirrel.components.WorkerComponent.run(WorkerComponent.java:71)\n","stream":"stdout","time":"2017-10-02T12:27:07.14780594Z"}
{"log":"\u0009at org.hobbit.core.run.ComponentStarter.main(ComponentStarter.java:67)\n","stream":"stdout","time":"2017-10-02T12:27:07.147832593Z"}
```
1. The exception shouldn't occur
2. The logging of domains is only logging and not a crucial part of the worker. If the logging encounters a problem, it shouldn't stop the worker.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with org.aksw.simba.squirrel.log.DomainLogger.next at DomainLogger.java:64, then inspect its call from WorkerImpl.sendNewUris at WorkerImpl.java:159. Reproduce the third-run failure if possible or add a regression test around domain logging. Done means a logging failure does not throw a NullPointerException or stop the worker.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- observability-sre
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 45/100