wie script timeout höher legen

hallo,

ich habe eine db die ich reorganisieren möchte, die script dauern aber einige zeit, weil da einige daten geholt und geändert werden.

nun bekomme ich im ips fehlermeldungen und die scripte brechen mittendrin ab, ohne das alle daten da sind mit der folgenden fehlermeldung:

Maximum execution time of 30 seconds exceeded

wie kann ich ipsscripten einen höheren timeout zuweisen?

Hallo pleibling,

versuchs mal mit set_time_limit

set_time_limit(80); //Timeout auf 80s setzen

Grüße
Roland

Setz in der php.ini max_execution_time = 30 , höher.

danke für eure hilfe. der tip von mtec hat schon geholfen.

danke dennoch rainer :).

Kann es sein, dass die Einstellung in der C:\IP-SYMCON\PHP.INI überhaupt nicht wirkt?

In der ersten Zeile stand original der Wert 30. Die eingetragene 120 bleibt aber offenbar völlig wirkungslos. Bei meinem ShutterControl gibt es trotzdem permanent die Fehlermeldung lt. Anhang.

IPS-Version ist 2.2 im aktuellen Patchlevel



```php

max_execution_time=120
register_globals=on
error_reporting=E_ALL
extension_dir=C:\IP-Symcon\ext
extension = php_gd2.dll
extension = php_gettext.dll
extension = php_soap.dll
[DATE]
date.timezone="Europe/Berlin"

der gleiche Fehler tritt übrigens auch auf, wenn ich das Timeout per Befehl direkt im ShutterControl-Script ändere!


<?
set_time_limit(80);
//Variables provided by ShutterControl Module
IPS_LogMessage("InstanceID", $SC_INSTANCE); /* InstanceID */
IPS_LogMessage("Direction", $SC_DIRECTION); /* {0..2} Stop, Up, Down */
IPS_LogMessage("Duration", $SC_DURATION); /* ms */

if($IPS_SENDER != "ShutterControl")
 die("This script can only be started by the ShutterControl Module");
...usw.

@gwanjek

Hast du den IPS-Dienst, vorm Editieren der php.ini, beendet?

ich verwende

ini_set( 'max_execution_time', 300);  

und das funktioniert problemlos bei lange laufenden Scripten, z.B. der Abholung von Wetterdaten als XML.

Eventuell funktioniert das set_time_limit wegen PHP SafeMode nicht?

nö. tzä… ich probiers mal gleich.


…dank Teamviewer 10min später:

@nancilla:
Jo, das wars! Dienst neu gestartet und es geht! Danke!!!

ABER: Es scheint NUR die Änderung der PHP.INI zu wirken, alle zur Laufzeit benutzten Befehle sind völlig wirkungslos!

Das liegt vielleicht daran, dass das ein in eine Instanz eingebettetes Script ist, wo ganz andere Laufzeitbedingungen im Tochterprozess oder so herrschen?

Man bedenke auch den merkwürdigen Dateinamen in der Fehlermeldung:

„C:\IP-Symcon- on line 1“

Gruß Gerd