Skip to content
This repository was archived by the owner on Dec 26, 2025. It is now read-only.
This repository was archived by the owner on Dec 26, 2025. It is now read-only.

Exception launched when starting script with Node already playing #8

Description

@cedmallet

script running on a Pi 4 / raspberry OS Buster. Streaming from Node 2i

Everything works fine when starting script, then streaming: scrobbling perfectly.

If I start playing a song and then run the script, the following error occurs :

Starting 'BluOS' detector...
Starting LSDP discovery thread...
Detected player 'BluOS/Node2' is managed by the 'Player Group' group.
All players of type 'BluOS' in group 'Player Group' have been found. Stop looking for other players of this type.
Starting monitor for player 'Node2 (Standard: BluOS, model: N125, version 3.16.1, IP address: 192.168.1.46, MAC address: 90:56:82:41:73:c4)'...
Starting player polling thread for player 'Node2 (Standard: BluOS, model: N125, version 3.16.1, IP address: 192.168.1.46, MAC address: 90:56:82:41:73:c4)...
Stopping 'BluOS' detector...
Error occurred while polling PlayerProxy{impl=BluOsPlayerImpl{playerType=union PlayerTypes.BluOs, name=Node2, bluOsImpl=struct BluOsPlayerImpl{name=Node2, port=11000, model=N125, version=3.16.1, macAddress=90:56:82:41:73:c4, ipAddress=192.168.1.46, LSDPVersionSupposedly=1, host=192.168.1.46}}, playerTypeId=BluOS, id=BluOS/Node2}: java.lang.IllegalArgumentException: Comparison method violates its general contract!
Exception in thread "PollBasedMonitorHelper" java.lang.IllegalArgumentException: Comparison method violates its general contract!
        at java.base/java.util.TimSort.mergeLo(TimSort.java:781)
        at java.base/java.util.TimSort.mergeAt(TimSort.java:518)
        at java.base/java.util.TimSort.mergeForceCollapse(TimSort.java:461)
        at java.base/java.util.TimSort.sort(TimSort.java:254)
        at java.base/java.util.Arrays.sort(Arrays.java:1515)
        at java.base/java.util.ArrayList.sort(ArrayList.java:1750)
        at java.base/java.util.stream.SortedOps$RefSortingSink.end(SortedOps.java:392)
        at java.base/java.util.stream.DistinctOps$1$2.end(DistinctOps.java:168)
        at java.base/java.util.stream.StreamSpliterators$AbstractWrappingSpliterator.fillBuffer(StreamSpliterators.java:210)
        at java.base/java.util.stream.StreamSpliterators$AbstractWrappingSpliterator.doAdvance(StreamSpliterators.java:161)
        at java.base/java.util.stream.StreamSpliterators$WrappingSpliterator.tryAdvance(StreamSpliterators.java:300)
        at java.base/java.util.stream.Streams$ConcatSpliterator.tryAdvance(Streams.java:720)
        at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:127)
        at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:502)
        at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:488)
        at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
        at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
        at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:543)
        at org.eclipse.golo.runtime.RegularMethodFinder.find(RegularMethodFinder.java:40)
        at org.eclipse.golo.runtime.MethodInvocationSupport.findTarget(MethodInvocationSupport.java:349)
        at org.eclipse.golo.runtime.MethodInvocationSupport.lookupTarget(MethodInvocationSupport.java:225)
        at org.eclipse.golo.runtime.MethodInvocationSupport.fallback(MethodInvocationSupport.java:250)
        at audiostreamerscrobbler.utils.RequestUtils.doHttpGetRequest(RequestUtils:11)
        at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:710)
        at org.eclipse.golo.runtime.FunctionCallSupport.fallback(FunctionCallSupport.java:210)
        at audiostreamerscrobbler.factories.RequestFactory.__$$_golo$compiler$sugar_closure_8(RequestFactory:54)
        at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:710)
        at gololang.FunctionReference.invoke(FunctionReference.java:157)
        at gololang.DynamicObject.dispatchCall(DynamicObject.java:171)
        at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:710)
        at org.eclipse.golo.runtime.MethodInvocationSupport.fallback(MethodInvocationSupport.java:280)
        at audiostreamerscrobbler.players.bluos.BluOsMonitor.requestPlayerState(BluOsMonitor:61)
        at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:710)
        at org.eclipse.golo.runtime.FunctionCallSupport.fallback(FunctionCallSupport.java:210)
        at audiostreamerscrobbler.players.bluos.BluOsMonitor.pollBluOsStatus(BluOsMonitor:42)
        at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:710)
        at org.eclipse.golo.runtime.FunctionCallSupport.fallback(FunctionCallSupport.java:210)
        at audiostreamerscrobbler.players.bluos.BluOsMonitor.__$$_golo$compiler$sugar_closure_1(BluOsMonitor:34)
        at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:710)
        at gololang.FunctionReference.invoke(FunctionReference.java:157)
        at gololang.DynamicObject.dispatchGetterStyle(DynamicObject.java:201)
        at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:710)
        at org.eclipse.golo.runtime.MethodInvocationSupport.fallback(MethodInvocationSupport.java:280)
        at audiostreamerscrobbler.players.helpers.PollBasedMonitorHelper.pollPlayerAnCallCallback(PollBasedMonitorHelper:103)
        at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:710)
        at org.eclipse.golo.runtime.FunctionCallSupport.fallback(FunctionCallSupport.java:210)
        at audiostreamerscrobbler.players.helpers.PollBasedMonitorHelper.__$$_golo$compiler$sugar_closure_5(PollBasedMonitorHelper:41)
        at java.base/java.lang.invoke.MethodHandleProxies$1.invoke(MethodHandleProxies.java:195)
        at jdk.proxy1/com.sun.proxy.jdk.proxy1.$Proxy3.run(Unknown Source)
        at java.base/java.lang.Thread.run(Thread.java:829)
Stopping LSDP discovery thread...

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions