DSheirer / sdrtrunk

A cross-platform java application for decoding, monitoring, recording and streaming trunked mobile and related radio protocols using Software Defined Radios (SDR). Website:
GNU General Public License v3.0
1.51k stars 246 forks source link

Catch exceptions from disconnects - AbstractAudioBroadcaster.setBroadcastState(AbstractAudioBroadcaster.java:71) Cannot read field "from" because "<local6>" #1680

Open louisik1 opened 8 months ago

louisik1 commented 8 months ago

sdrtrunk Version 0.6.0-alpha

Describe the bug Internet went out due to space heater blowing circuit

To Reproduce Steps to reproduce the behavior: Pull the power on your wi-fi system (cable modem, router), but leave the sdrtrunk system fully operational, still pulling in broadcasts, still trying to serve to broadcastify

Expected behavior Sdrtrunk could output "oh no.. something happend to the network.. retrying.."

Actual behavior We got this hundreds of times over a couple minutes before fixing the circuit breaker:

2023-10-24 16:14:12.221 ERROR i.g.d.util.ThreadPool - Error while executing runnable in scheduled thread pool [sdrtrunk cached thread 32] [1GB/2GB 53%] java.lang.NullPointerException: Cannot read field "from" because "" is null at javafx.base/javafx.collections.ListChangeBuilder.compress(Unknown Source) at javafx.base/javafx.collections.ListChangeBuilder.commit(Unknown Source) at javafx.base/javafx.collections.ListChangeBuilder.endChange(Unknown Source) at javafx.base/javafx.collections.ObservableListBase.endChange(Unknown Source) at javafx.base/com.sun.javafx.collections.ObservableListWrapper.access$200(Unknown Source) at javafx.base/com.sun.javafx.collections.ObservableListWrapper$1$1.invalidated(Unknown Source) at javafx.base/com.sun.javafx.binding.ExpressionHelper$Generic.fireValueChangedEvent(Unknown Source) at javafx.base/com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(Unknown Source) at javafx.base/javafx.beans.property.ObjectPropertyBase.fireValueChangedEvent(Unknown Source) at javafx.base/javafx.beans.property.ObjectPropertyBase.markInvalid(Unknown Source) at javafx.base/javafx.beans.property.ObjectPropertyBase$Listener.invalidated(Unknown Source) at javafx.base/com.sun.javafx.binding.ExpressionHelper$SingleInvalidation.fireValueChangedEvent(Unknown Source) at javafx.base/com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(Unknown Source) at javafx.base/javafx.beans.property.ObjectPropertyBase.fireValueChangedEvent(Unknown Source) at javafx.base/javafx.beans.property.ObjectPropertyBase.markInvalid(Unknown Source) at javafx.base/javafx.beans.property.ObjectPropertyBase.set(Unknown Source) at javafx.base/javafx.beans.property.ObjectProperty.setValue(Unknown Source) at io.github.dsheirer.audio.broadcast.AbstractAudioBroadcaster.setBroadcastState(AbstractAudioBroadcaster.java:71) at io.github.dsheirer.audio.broadcast.AudioStreamingBroadcaster.setBroadcastState(AudioStreamingBroadcaster.java:212) at io.github.dsheirer.audio.broadcast.icecast.IcecastTCPAudioBroadcaster$1.run(IcecastTCPAudioBroadcaster.java:179) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

Desktop (optional - complete the following information): Windows 10, beefy system, several nooelec tuners contributing to a single channel with 14 broadcasts to broadcastify.

Additional context Reminder as it turns chilly out, bigger space heaters can draw a lot of electricity, potentially overloading the electrical circuits in your home. Take the opportunity to inspect your circuit access panel, make sure it's accessible, and make sure everyone in your home knows where it's at and how to reconnect a flipped circuit breaker. And as always, you want to make sure you have flashlights with good batteries, or candles and a good lighter or matches available, in case the lights go out. These simple checks can save you and your family a lot of stress when, and if, something unfortunate happens. 🌈

DSheirer commented 8 months ago

@louisik1 I've tested this scenario (streaming to broadcastify with temporary network outage) and I can't reproduce the error you're seeing. I'm testing against the current master branch which is the equivalent of version 0.6.0 beta 3 (released yesterday).