Massive Probleme mit der Datenbankplaylist (Playlists fehlen plötzlich mitten im laufenden Betrieb -> Sendeausfall!)

Hallo,

leider habe ich gerade ein sehr unschönes Verhalten von ML 7.2.3 (Professional Studio) festgestellt: Die Playlist ist mitten im Sendebetrieb einfach leergelaufen, obwohl die Sendestunde definitiv vorgeplant war. Als ich daraufhin die nächsten und auch vorherigen Stunden durchgeblättert habe, habe ich festgestellt, dass stundenweise plötzlich die vorher vorhandenen Playlists nicht mehr angezeigt werden.

Jetzt kommts aber: Nach einem Neustart von mAirList sind alle Playlists wieder da! Ich habe vor dem Neustart einen Bugreport angefertigt, den ich auf Anfrage gerne mitschicken kann. Hier ein Video, das die Problematik klar veranschaulicht:

Vor einer Woche ist mAirList mitten im Sendebetrieb ohne ersichtlichen Grund einfach eingefroren - diese Probleme gab es bei ML 6 nicht.

Ich benötige dringend Unterstützung, so ist kein zuverlässiger Sendebetrieb mehr möglich!

Vielen Dank vorab.

Gibt es irgend welche Einträge im Systemlog?
Welche Art der Datenbank nutzt du?
Wo liegt diese?

Leider keinerlei nützliche Einträge im Systemlog, nur

“{“Timestamp”:“2023-12-13T19:34:20.662”,“Message”:“Playlist 0 ran empty.”,“Level”:“Warning”}”

Ich nutze bei diesem Konstrukt die lokale MLDB, diese liegt direkt auf der SSD des Playout Rechners und wird stündlich per Script weggesichert.

Wie groß ist denn die Datenbank?

nur ca. 118 MB, lief bis zum Upgrade auf ML7 auch absolut problemlos und zuverlässig

Nur mal eine blanke Vermutung von mir :

Ich kenne dieses Phänomen nur, wenn die Datenbank nicht erreichbar ist.

Wenn du eine Datensicherung machst, und im gleichen Augenblick möchte Mairlist darauf zugreifen, kann es zu schreib/lese Probleme kommen.

Das wäre dann eher Zufall und könnte erklären warum es eben nicht immer auftritt.

Aber wie gesagt, ist nur eine Vermutung von mir.

1 Like

Danke für den Hinweis. Ja, muss ich mal beobachten. Ist halt echt etwas eigenartig, das Phänomen hatte ich bei vorherigen mAirList Versionen nie, zumal die Sicherung um XX:05 Uhr erfolgt und mAirList jetzt um 19:34 Uhr stehengeblieben ist.

Da die Playlist ja auch immer für die komplette Stunde geladen wird, verstehe ich auch nicht ganz, warum die von jetzt auf gleich mitten in der laufenden Stunde dann einfach mal weg ist.

Wann führst du das Event genau aus? XX:50?

Dann versuch doch erst einmal, ohne das Backup der Datenbank zu arbeiten.
Ob es damit besser läuft.

Ist nur ein Versuch, um das auszuschließen.

Einen Versuch ist es sicherlich wert, ich hoffe dennoch, dass sich das Phänomen insbesondere im Bezug auf das mAirList 7 Upgrade näher eingrenzen lässt.

Das “Datenbankplaylist anhängen” Event läuft um XX:58.

Du schriebst

Was genau ist denn da passiert? Ist die PL vorher erfolgreich geladen worden, sollte ein neuer Titel laufen, wurde gestartet und sofort übersprungen, und das ging so weiter bis zum Stundenende?

Das hätte jedoch nicht zur Folge, dass andere PL gelöscht würden.

Was ist da genau passiert? Beim Playout, so dass die Player auch eingefroren sind?

Beim Laden einer PL? Und ging es dann gar nicht mehr weiter mit Bugreport-Fenster?

Ich kann zwar Deinen Frust verstehen, habe aber bei mir und vielen Kunden die v7 laufen, schon wochenlang ohne Probleme (und Neustart).

Eventuell suchen wir also nicht nur in mAirlist den Fehler.

Da Du auch schon von anderen Problemen wie z.B. dem Audio-Glitch geschrieben hattest, wäre es denkbar, dass bei euch im System generell der Wurm drin ist oder auch die SSD einen Schuss hat?

Ich war leider zum Ausfallzeitpunkt nicht im Studio und habe erst durch die Benachrichtigung des Überwachungssystems mitbekommen, dass das Notprogramm angelaufen ist. Laut Logfile lief aber alles bis 19:34 sauber, dann lief die Playlist plötzlich leer (obwohl noch mehr als genug Elemente vorhanden waren). Von übersprungenen Elementen ist im Logfile nichts zu erkennen.

Vor einer Woche ist das Playout einfach mitten im laufenden Song eingefroren. Audio war von einer Sekunde auf die andere weg und die GUI stand auch. Nur ein Neustart von ML schaffte Abhifle. Lief dann wieder 7 Tage (bis heute) sauber.

Ganz ausschließen will ich das an dieser Stelle nicht, es wäre jedoch sehr verwunderlich, zumal alles andere auf dem System hervorragend läuft und auch die Lese/Schreibgeschwindigkeit der SSD, sowie die Zugriffszeiten nach ausführlichen Tests absolut unauffällig sind. Die Probleme (auch der Audioglitch) treten wirklich erst seit dem Upgrade auf die Version 7 vor zwei Wochen auf - vorher gab es nie solche Auffälligkeiten. Möglich ist es natürlich trotzdem, aber das wäre dann schon ein heftiger Zufall.

Ich bin an sich mit mAirList 7 sehr zufrieden, der aktuell instabile Zustand besorgt mich jedoch, zumal ein Downgrade auf Version 6 aufgrund des inkompatiblen Datenbankschemas ja nicht mehr ohne Weiteres möglich wäre.

1 Like

Bei mir hat sich ein ähnliches Problem in der Version 7.2.3 ereignet. Die Playlist ist ohne Gründe um ca 19:40 Uhr leer gelaufen und es wurde die Notfall Playlist geladen (was auch passieren soll: Aktion „wenn die Playlist während der(…)“ Die Playlist der nächsten Stunde (20 Uhr, harte Fixzeit) wurde nicht um xx:56 geladen, sondern die Notfall Liste lief einfach weiter. Um das Problem weiter lokalisieren zu können, habe ich die o.g. Aktion vorerst entfernt.

Bitte einmal das komplette Systemprotokoll (C:\ProgramData\mAirList\7.x\Log\<Datum>.log) von dem Tag an support@mairlist.com schicken, dann sehen wir weiter.

Edit: Und auch gerne die .mldb einmal hier hochladen (das Log gerne auch anstatt es zu mailen): Nextcloud

@Torben Vielen Dank, ich habe beides in die Nextcloud hochgeladen. Nach dem Ausfall hatte ich im Rahmen der Fehlersuche mAirList und auch den Senderechner neu gestartet, daher gab es auch danach noch entsprechende Einträge im Log.

Danke, ist angekommen.

Um 18:58:00 wurde ein Event (“PLAYLIST NACHLADEN”) ausgeführt:

{"Timestamp":"2023-12-13T18:58:00.026","Message":"Führe Event PLAYLIST NACHLADEN aus","Level":"Info"}

Dürfte ich bitte einmal Screenshots der Einstellungen dieses Events sehen, incl. der Einstellungen der darin enthaltenen Aktionen?

Alternativ die events.mle aus dem config-Ordner ins Nextcloud hochladen bitte.

Gerne, anbei:


EDIT: “Optionen” nachgereicht

Danke. Das sieht erstmal gut aus.

Andererseits ist an den Logs sehr eindeutig zu sehen, was passiert ist: Das Event um 18:58 hat nicht die 19-Uhr-Stunde geladen, sondern noch einmal die 18-Uhr-Stunde. Durch die dort enthalten Fixzeiten hat die Playlist alles mögliche übersprungen und ist hinter den zweiten Werbeblock der 18-Uhr-Stunde gesprungen, also in die zweite halbe Stunde der 18-Uhr-Stunde:

{"Timestamp":"2023-12-13T18:58:00.026","Message":"Führe Event PLAYLIST NACHLADEN aus","Level":"Info"}
{"Timestamp":"2023-12-13T18:58:00.118","Message":"Werbecontainer untersucht: 2, geändert: 0","Level":"Info"}
{"Timestamp":"2023-12-13T18:58:00.122","Message":"Überspringe fehlerhaftes Element \"Block 1\": ","Level":"Warning"}
{"Timestamp":"2023-12-13T18:58:00.366","Message":"Fixed time reached, jump to: 13.12.2023 18:02:59.000 - News Opener","Level":"Debug"}
{"Timestamp":"2023-12-13T18:58:00.386","Message":"Datei-Recorder: Aufnahme in Z:\\ARCHIV\\NEWS\\weltnews.mp3 wurde gestartet.","Level":"Info"}
{"Timestamp":"2023-12-13T18:58:00.469","Message":"Fixed time reached, jump to: 13.12.2023 18:38:59.000 - Block 2","Level":"Debug"}
{"Timestamp":"2023-12-13T18:58:00.470","Message":"Überspringe fehlerhaftes Element \"Block 2\": ","Level":"Warning"}
{"Timestamp":"2023-12-13T18:58:00.718","Message":"Datei-Recorder: Aufnahme in Z:\\ARCHIV\\NEWS\\regionews.mp3 wurde gestartet.","Level":"Info"}
{"Timestamp":"2023-12-13T18:58:05.367","Message":"Stop: Z:\\ON AIR\\IMPORT\\CLUBFM CHARTS\\Charts Update 25 07 2021\\George Z - Lose My Mind.mp3 (31 seconds)","Level":"Playlist"}
{"Timestamp":"2023-12-13T19:00:20.801","Message":"Start: Z:\\ON AIR\\STUDIO\\JINGLES\\Floyd Media - Club FM 2022\\06. Theme Top of the Hour\\Theme 06 TOH Basic ID Full Vocals.wav","Level":"Playlist"}
{"Timestamp":"2023-12-13T19:00:22.871","Message":"Datei-Recorder: Aufnahme in Z:\\ARCHIV\\NEWS\\weltnews.mp3 wurde gestoppt.","Level":"Info"}
{"Timestamp":"2023-12-13T19:00:22.885","Message":"Datei-Recorder: Aufnahme in Z:\\ARCHIV\\NEWS\\regionews.mp3 wurde gestoppt.","Level":"Info"}
{"Timestamp":"2023-12-13T19:00:30.288","Message":"Start: Z:\\ON AIR\\IMPORT\\CLUBFM CHARTS\\Charts Update 26 11 2023\\Oliver Heldens & Weibird - Out of Love.mp3","Level":"Playlist"}

Wenn du in die Datenbank-Playlist (oder weiter oben im Systemprotokoll) schaust, siehst du, dass Out of Love der erste Titel nach dem Werbeblock 2 in der 18-Uhr-Stunde war und dort auch schon gespielt wurde.

Dadurch war dann natürlich irgendwann Schicht im Schacht, weil eine halbe Stunde Material fehlte.

Die allesentscheidende Frage ist, warum er die falsche Stunde geladen hat. Ich vermute, dass wir es hier mit demselben Rundungsfehler zu tun haben, der in einem ähnlichen Zusammenhang auch hier schon berichtet wurde:

Der Fehler hängt mit der Art und Weise zusammen, wie Delphi (die Programmiersprache) mit Datums- und Zeitangaben rechnet. In dem Thread ist es genauer beschrieben.

Einen grundsätzlichen Bug in mAirList 7.x kann ich ausschließen, denn es hat sich an der Codestelle seit Jahren nichts mehr geändert, im Grunde ist dort alles identisch wie noch in Version 6.x.

Was sich allerdings zwischen mAirList 6 und 7 geändert hat, ist die verwendete Delphi-Version (vorher XE6, jetzt 10.4). Möglicherweise haben wir es also hier mit einem Bug in Delphi zu tun, der erst in dieser neuen Compiler-Version auftritt, weil irgendetwas an den Libraries und den Funktionen zur Zeitberechnung geändert wurde.

Ich muss da weiter nachforschen. Melde mich in Kürze, denn das ist ja schon eine kritische Angelegenheit…

5 Likes

Vielen Dank für die ausführliche Analyse und Erklärung. Das würde tatsächlich einiges erklären. Ich habe gerade mit einem Bekannten gesprochen, der auch mAirList 7 einsetzt, dort kam es kürzlich zu einem identischen Problem. Auch dort wurde in der Playlistverwaltung bei den betroffenen Stunden nichts mehr angezeigt, nach einem Neustart lief alles wieder normal.

1 Like

Noch eine Zwischenfrage: Sind irgendwelche Soundprocessing-Plugins oder sonstige “Fremd-DLLs” im Einsatz?

(Klingt abwegig, ich weiß, aber den Hintergrund erkläre ich später.)

1 Like