#403: Thread "root" aborts with exception File "operators/switch.ml", line 199,
characters 10-16: Assertion failed!
-------------------------+--------------------------------------------------
Reporter: Martijn | Owner: admin
Type: Bugs | Status: closed
Priority: 1 | Milestone:
Component: Liquidsoap | Version: 0.9.3
Resolution: fixed | Keywords:
Mac: 0 | Linux: 1
Netbsd: 0 | Other: 0
Freebsd: 0 |
-------------------------+--------------------------------------------------
Changes (by mrpingouin):
* status: new => closed
* resolution: => fixed
Comment:
I was able to fix the bug in r7901. At least it solves the issue with the
minimized code, but I'm pretty sure it fixes your problem, because I
simply dropped the assertion.
A little explanation. The problem is caused by a fast switch, with a
predicate that turns on and then off soon afterwards: we have a caching
mechanism to avoid that the resulting source declares that it is ready and
then suddenly backs off; it has to stick "long enough" to its word. In
your scenario, the switch turned on, declared to be ready to another
fallback, but the fallback only tried to use it for the next clock cycle
(because the current frame/cycle is already done). The problem is that the
caching mechanism is reset with the new clock cycle, so we have a
situation where the fallback thinks the switch is ready, but the switch
thinks it should not be used. In that case it seems okay to remove the
test and allow the switch to politely back off.
This kind of situation shows a little weakness with our model: there is no
difference between (1) asking whether a source is ready and (2) inform the
source that we start using it, which should lock it into being ready for
at least a track. There are other problems of this kind... but the good
news is that they're rarely problematic, and we should hopefully be fine
for a few more years :)
--
Ticket URL: <http://savonet.rastageeks.org/ticket/403#comment:6>
Savonet <http://savonet.rastageeks.org/>
Let's program our stream !
------------------------------------------------------------------------------
Nokia and AT&T present the 2010 Calling All Innovators-North America contest
Create new apps & games for the Nokia N8 for consumers in U.S. and Canada
$10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing
Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store
http://p.sf.net/sfu/nokia-dev2dev
_______________________________________________
Savonet-trac mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/savonet-trac