Exit-Strategie

  • Hallo,
    Entweder bin ich zu doof dazu, oder es gibt im Kodinerds-Forum keine Möglichkeit, unterhalb eines Themenfelds zu suchen:
    Wie kann ich nach Begriffen suchen, die nur im Ember Media Manager Baum gepostet wurden?

    Aber man möge mir das bitte verzeihen, falls ich da was übersehen haben sollte...

    Ich habe folgendes Problem:
    Meine EMM-Datenbank ist sehr groß, und diese Datenbank komplett durchzuarbeiten braucht bei mir mehrere Stunden. (Sauschneller Rechner, 32 GB RAM, Arbeitsverzeichnisse komplett auf sehr schneller SSD !)
    Das ist O.K., wenn ich weiß dass das Programm das tut was es soll.. Dann lasse ich den Rechner halt über Nacht durcharbeiten.
    Doch manchmal will man halt z.B. das Teilergebnis sehen, bevor man dazu erst Stunden warten muss...
    Dafür sollte man eine Exit-Routine einbauen, die z.B. mittels der ESC-Taste eingeleitet werden kann, und den Vorgang dann geordnet abbricht.
    Bisher habe ich für mich nur die Möglichkeit genutzt, das Programm komplett abzuschießen, was bei Datenbank-Operationen eigentlich keine gute Idee ist...

    Dieses Problem gab es früher auch mal bei Grafik-Programmen, wie Photoshop, oder auch Corel: Hat man da was Falsches angeklickt, wurde man dazu verdonnert, ins Gefängnis zu gehen, nicht über Los, und musste drei Runden aussetzen.
    Die haben das dann im Laufe der Zeit alle über den ESC-Button gelöst... (Schlagworte: Exit If ... , Exit Do ..., Exit For ..., Exit Sub ..., u.s.w...)
    Dann kann man das hinterher behandeln und dafür sorgen, dass keine unvollständige Datensätze entstanden sind, die hinterher Probleme bereiten können...

    Diese Abbruch-Funktion sollte man meiner Meinung nach in alle Features einbauen, die Massen-Daten verarbeiten. Wird z.B. die ESC-Taste gedrückt, wird der letzte in Bearbeitung befindliche Datensatz abgeschlossen, und dann ist Schicht... Wie man das letztlich abbrechen kann, unterliegt natürlich der künstlerischen Freiheit des Programmierers. Doch die ESC-Taste war hier schon von Anfang an genau dafür vorgesehen...

    Nur mal so, als Idee...

    Gruß
    Oreus

  • Wie kann ich nach Begriffen suchen, die nur im Ember Media Manager Baum gepostet wurden?

    Wen du im Ember Bereich bist kannst du doch einfach das Suchfeld rechts oben benutzen, dann wird standardmässig nur innerhalb dieses Bereiches gesucht. Du kannst auch unter selbem Feld auf "erweiterte Suche" gehen, der Bereich "nur" Ember ist dann schon vorausgewählt.

    Meine EMM-Datenbank ist sehr groß, und diese Datenbank komplett durchzuarbeiten braucht bei mir mehrere Stunden. (Sauschneller Rechner, 32 GB RAM, Arbeitsverzeichnisse komplett auf sehr schneller SSD !)
    Das ist O.K., wenn ich weiß dass das Programm das tut was es soll.. Dann lasse ich den Rechner halt über Nacht durcharbeiten.
    Doch manchmal will man halt z.B. das Teilergebnis sehen, bevor man dazu erst Stunden warten muss...
    Dafür sollte man eine Exit-Routine einbauen, die z.B. mittels der ESC-Taste eingeleitet werden kann, und den Vorgang dann geordnet abbricht.
    Bisher habe ich für mich nur die Möglichkeit genutzt, das Programm komplett abzuschießen, was bei Datenbank-Operationen eigentlich keine gute Idee ist...

    Aktuell besteht noch das Problem, dass ein Teil der Vorgänge wie z.B. das Scrapen immer noch als Funktion im in der GUI Klasse geschrieben sind und andere wie das Massenändern des Watched-Status in einem eigenen Thread in der Taskmanager-Klasse der API laufen. Beim Scrapen wird aber zumindest ein Abbrechen Button eingeblendet, der dann beim aktuellen Film sauber (geordnet) abbricht und die Daten für diesen Film verwirft. Zur Sicherheit wird der Film, bei dem der Abbruch ausgeführt worden ist nochmals neu von der HD eingelesen, damit der Stand in der DB mit den lokale gespeicherten Daten übereinstimmt. Alle bis zum Abbruch geänderten Filme sind dann aber wie zu erwarten in der DB vorhanden.

    Eine unschöne Sache gibt es dabei noch, die ich wohl mit nächstem Commit endlich fixen kann:
    Wenn mehrere Filme mittels Autoscraper gescrapt werden die DB-Änderungen erst am Schluss in die Datenbank commited. Sprich wenn Ember bei Scrapen crasht kann es unter Umständen vorkommen, dass die Änderungen zwar lokal gespeichert worden sind (neue Bilder, NFO usw.), die Datenbank jedoch noch den alten Stand vor dem Scrapen hat. In 99% der Fälle eines Absturzes werden die Änderungen aber noch commited. Das passiert aber nicht, wenn der User Ember via Taskmanager abwürgt.

    Dieses Problem gab es früher auch mal bei Grafik-Programmen, wie Photoshop, oder auch Corel: Hat man da was Falsches angeklickt, wurde man dazu verdonnert, ins Gefängnis zu gehen, nicht über Los, und musste drei Runden aussetzen.
    Die haben das dann im Laufe der Zeit alle über den ESC-Button gelöst... (Schlagworte: Exit If ... , Exit Do ..., Exit For ..., Exit Sub ..., u.s.w...)
    Dann kann man das hinterher behandeln und dafür sorgen, dass keine unvollständige Datensätze entstanden sind, die hinterher Probleme bereiten können...

    Diese Abbruch-Funktion sollte man meiner Meinung nach in alle Features einbauen, die Massen-Daten verarbeiten. Wird z.B. die ESC-Taste gedrückt, wird der letzte in Bearbeitung befindliche Datensatz abgeschlossen, und dann ist Schicht... Wie man das letztlich abbrechen kann, unterliegt natürlich der künstlerischen Freiheit des Programmierers. Doch die ESC-Taste war hier schon von Anfang an genau dafür vorgesehen...

    Ich muss mal sehen, ob ich die ESC Taste vernünftig dafür auslegen kann. Das wird aber erst dann funktionieren, wenn ich alle Aufgaben in den Taskmanager verschoben habe. Wird also noch dauern.

  • Ein weiteres Problem, das ich erkannt habe, ist folgendes:
    Wenn die Filme mit den Datenbank-Dateien nicht lokal liegen, sondern auf einem Netzlaufwerk, dann kann sich Ember erst damit verbinden, wenn man zuvor im Windows-Explorer dieses Laufwerk angeklickt hat.
    Ansonsten behauptet es, die Daten-Quelle wäre nicht mehr verfügbar...
    Das wäre relativ leicht zu lösen, indem Ember einen 'Net-Use' auf die Datenbank-Freigabe absetzt, die ja in den Settings unter "Filme - Dateien und Quellen" hinterlegt ist, bevor es, nach einer kurzen Warteschleife, versucht, darauf zuzugreifen... Dafür gibt es aber auch eine .Net-Referenz...
    Aber nix für Ungut: Das vergessen sogar die Programmierer von sehr namhaften Applikationen, wie MS-Office etc., sehr oft...
    Mit diesem Aufruf wird die ja schon bekannte Netzwerkverbindung wieder hergestellt, und ist danach auch verfügbar.

    Ich befürchte, ich werde hier langsam zur Qual für den netten Menschen, der uns allen das Ember erhalten will...

    Gruß
    Oreus...

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!