Gründe für Script Abbruch?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Gründe für Script Abbruch?

    Hi,

    schreib gerade ein grösseres Import Script für eine Datenbank. Das komische ist, das das Script nach etwa 250 Datensätzen ohne Fehlermeldung abbricht (insgesamt sollen 45.000) bearbeitet werden.

    Pro Datensatz benötigt das Script etwa 5 Sekunden für das Zusammentragen der Daten und das Eintragen in die neue Datenbank. Während der gesamten Zeit benötigt das Script ca 75MB Speicher. Der Speicherverbrauch ändert sich pro Datensatz auch nicht - also kein Speicherfresser.

    Ich hab natürlich das memory_limit entsprechend gesetzt und auch das time_limit auf 0 gestellt

    PHP-Code:
    set_time_limit(0);
    ini_set('memory_limit''256M');

    error_reporting(E_ALL); 
    Das ganze läuft unter PHP 5.2. Hat jemand von euch nen Tipp für mich, wonach ich noch suchen könnte? Danke.

  • #2
    hast du auch überprüft, ob die einstellungen tatsächlich gelten?

    hast du sonstige Testausgaben gemacht?

    Gibt es eine bestimmte Stelle an der das Script abbricht oder immer unterschiedlich? Also kannst du den Fehler nachstellen?

    Kommentar


    • #3
      Lasse gerade nochmal eine Runde durchlaufen mit Testausgaben:

      Der erste Wert ist der Speicherverbrauch pro Lauf der foreach Schleife, der zweite die Zeit für eine Iteration und der dritte die Gesamtzeit.


      71.15MB | 5.3341s | 12.2878s
      71.15MB | 5.9089s | 18.1968s
      71.15MB | 7.2701s | 25.4669s
      ...
      71.16MB | 12.3621s | 488.7806s
      71.17MB | 13.6954s | 502.4760s
      71.18MB | 15.2715s | 517.7476s
      ...
      71.14MB | 0.6329s | 1,177.5611s
      71.14MB | 1.1994s | 1,178.7605s
      71.14MB | 0.3810s | 1,179.1415s


      ErrorReporting, TimeLimit und MemoryLimit gelten auf jeden Fall. Beim einschalten des ErrorReportings flogen mir erstmal ein paar notices um die Ohren und das TimeLimit und MemoryLimit wirken sieht man ja an den Zahlen

      Allerdings stelle ich gerade fest das das Script immer an der selben Stelle abbricht. Ich frage mich nur gerade, warum ich keinerlei Fehlermeldung bekomme....

      Ich werde jetzt erstmal die Levenshtein Query (die, die soviel Zeit frisst) ausbauen und durch eine einfachere ersetzen um das ganze mal schneller zu bekommen und den Fehler zu suchen.

      Für weiter Tipps und Ideen bin ich natürlich sehr offen. Danke.

      Kommentar


      • #4
        Original geschrieben von prego
        Ich werde jetzt erstmal die Levenshtein Query (die, die soviel Zeit frisst) ausbauen und durch eine einfachere ersetzen um das ganze mal schneller zu bekommen und den Fehler zu suchen.
        Hmm, erledigt - Bearbeitungszeit pro Eintrag nun auf ca 0,2s. Er brichti mmernoch am selben Datensatz ab - ich schau mir da mal die Inhalte an - wenns jetzt dadran lag fang ich an zu schreien

        Allerdings frage ich mich immernoch warum da keine Fehlermeldung in irgendeiner Weiße kommt.

        Kommentar


        • #5
          Vergesst es, bin über mein eigenes die() gestolpert.

          *doh*

          Kommentar


          • #6
            ich darf mal:

            Kommentar


            • #7
              Ja, da darf jeder ...

              *indieeckestell*

              Kommentar

              Lädt...
              X