Uruchamiam skrypt php z ssh za pomocą następującego polecenia
./script.php &
Skrypt jest pętlą ma pętlęokoło 800 000 razy (więc uruchomienie trwa kilka dni). Jednak obecnie zatrzymuje on kilka tysięcy pętli w procesie. Moje programy obsługi błędów nie wychwytują żadnego błędu ze skryptu, ale konsola czyta.
Write failed: Broken pipe
Czy ktokolwiek może rzucić światło na to, co oznacza ten komunikat, jaki problem to wskazuje i jak mogę go wyśledzić?
Aktualizacja:
Podsumowując, co robi skrypt800 000 wierszy z tabeli w mojej bazie danych (hostowane na tym samym serwerze co skrypt). Dla każdego wiersza wywołuje funkcję reszta na stronie trzeciej, a następnie zapisuje te dane do innej tabeli w tej samej bazie danych (hostowanej na tym samym serwerze co skrypt).
Odpowiedzi:
0 dla odpowiedzi № 1Broken pipe
ma dwie przyczyny:
Program pisze do potoku, albo dlatego, że używa funkcji podobnej do
popen()
lub wyjście skryptu jest przekierowywane do potoku, a odczyt programu z rury kończy się (lub zamyka jej koniec z innego powodu).Program pisze do połączenia sieciowego, a połączenie jest zamykane przez drugi koniec.