Hängende Events

Hallo,

ich habe das Problem, dass mein symcon sich meist nicht mit „/etc/init.d/symcon stop“ beenden lässt.
Dies liegt (zumindest meiner Analyse nach) an hängenden Events. Ich sehe noch einige php prozesse:


root@ipsymcon:/usr/share/symcon/scripts# ps -ef |grep /usr/bin/php |grep -v grep| cut -c 49-
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -48 VALUE FLOAT -48 VARIABLE INTEGER 49682 TARGET INTEGER 23175 EVENT INTEGER 47666 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -48 VALUE FLOAT -48 VARIABLE INTEGER 49682 TARGET INTEGER 19616 EVENT INTEGER 14986 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -39 VALUE FLOAT -39 VARIABLE INTEGER 49682 TARGET INTEGER 19616 EVENT INTEGER 14986 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -39 VALUE FLOAT -39 VARIABLE INTEGER 49682 TARGET INTEGER 23175 EVENT INTEGER 47666 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -47 VALUE FLOAT -48 VARIABLE INTEGER 49682 TARGET INTEGER 23175 EVENT INTEGER 47666 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -47 VALUE FLOAT -48 VARIABLE INTEGER 49682 TARGET INTEGER 19616 EVENT INTEGER 14986 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 TARGET INTEGER 39062 EVENT INTEGER 52624 SENDER STRING VGltZXJFdmVudA==
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 TARGET INTEGER 23297 EVENT INTEGER 31540 SENDER STRING VGltZXJFdmVudA==
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -18 VALUE FLOAT -17 VARIABLE INTEGER 49682 TARGET INTEGER 23175 EVENT INTEGER 47666 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -18 VALUE FLOAT -17 VARIABLE INTEGER 49682 TARGET INTEGER 19616 EVENT INTEGER 14986 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -11 VALUE FLOAT -11 VARIABLE INTEGER 49682 TARGET INTEGER 23175 EVENT INTEGER 47666 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -11 VALUE FLOAT -11 VARIABLE INTEGER 49682 TARGET INTEGER 19616 EVENT INTEGER 14986 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -10 VALUE FLOAT -9 VARIABLE INTEGER 49682 TARGET INTEGER 19616 EVENT INTEGER 14986 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -10 VALUE FLOAT -9 VARIABLE INTEGER 49682 TARGET INTEGER 23175 EVENT INTEGER 47666 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -1 VALUE FLOAT -1 VARIABLE INTEGER 49682 TARGET INTEGER 23175 EVENT INTEGER 47666 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -1 VALUE FLOAT -1 VARIABLE INTEGER 49682 TARGET INTEGER 19616 EVENT INTEGER 14986 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -3 VALUE FLOAT -3 VARIABLE INTEGER 49682 TARGET INTEGER 23175 EVENT INTEGER 47666 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -3 VALUE FLOAT -3 VARIABLE INTEGER 49682 TARGET INTEGER 19616 EVENT INTEGER 14986 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -4 VALUE FLOAT -4 VARIABLE INTEGER 49682 TARGET INTEGER 19616 EVENT INTEGER 14986 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -4 VALUE FLOAT -4 VARIABLE INTEGER 49682 TARGET INTEGER 23175 EVENT INTEGER 47666 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -7 VALUE FLOAT -7 VARIABLE INTEGER 49682 TARGET INTEGER 23175 EVENT INTEGER 47666 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -7 VALUE FLOAT -7 VARIABLE INTEGER 49682 TARGET INTEGER 19616 EVENT INTEGER 14986 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -19 VALUE FLOAT -19 VARIABLE INTEGER 49682 TARGET INTEGER 23175 EVENT INTEGER 47666 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -19 VALUE FLOAT -19 VARIABLE INTEGER 49682 TARGET INTEGER 19616 EVENT INTEGER 14986 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -22 VALUE FLOAT -22 VARIABLE INTEGER 49682 TARGET INTEGER 23175 EVENT INTEGER 47666 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -22 VALUE FLOAT -22 VARIABLE INTEGER 49682 TARGET INTEGER 19616 EVENT INTEGER 14986 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -4 VALUE FLOAT -4 VARIABLE INTEGER 49682 TARGET INTEGER 19616 EVENT INTEGER 14986 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -4 VALUE FLOAT -4 VARIABLE INTEGER 49682 TARGET INTEGER 23175 EVENT INTEGER 47666 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -36 VALUE FLOAT -36 VARIABLE INTEGER 49682 TARGET INTEGER 19616 EVENT INTEGER 14986 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -36 VALUE FLOAT -36 VARIABLE INTEGER 49682 TARGET INTEGER 23175 EVENT INTEGER 47666 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -37 VALUE FLOAT -37 VARIABLE INTEGER 49682 TARGET INTEGER 23175 EVENT INTEGER 47666 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -37 VALUE FLOAT -37 VARIABLE INTEGER 49682 TARGET INTEGER 19616 EVENT INTEGER 14986 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -43 VALUE FLOAT -43 VARIABLE INTEGER 49682 TARGET INTEGER 19616 EVENT INTEGER 14986 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=
/usr/bin/php -c ../php.ini -- THREAD INTEGER 0 OLDVALUE FLOAT -43 VALUE FLOAT -43 VARIABLE INTEGER 49682 TARGET INTEGER 23175 EVENT INTEGER 47666 TRIGGER STRING VHJpZ2dlcg== SENDER STRING VmFyaWFibGU=

Die Prozesse scheinen aber nichts mehr zu machen:


root@ipsymcon:/usr/share/symcon/scripts# strace -fp 32212
Process 32212 attached - interrupt to quit
read(0


Laut /proc ist der Prozess im Status sleeping:


root@ipsymcon:/proc/32212# cat status
Name:   php
State:  S (sleeping)
Tgid:   32212
Pid:    32212
PPid:   2708
TracerPid:      0
Uid:    0       0       0       0
Gid:    0       0       0       0
FDSize: 256
Groups: 0 1001
VmPeak:    24636 kB
VmSize:    24636 kB
VmLck:         0 kB
VmPin:         0 kB
VmHWM:      6488 kB
VmRSS:      6448 kB
VmData:     3396 kB
VmStk:       136 kB
VmExe:      7012 kB
VmLib:     10612 kB
VmPTE:        30 kB
VmSwap:        0 kB
Threads:        1
SigQ:   1/6993
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000000000
SigIgn: 0000000000011004
SigCgt: 0000000184000000
CapInh: 0000000000000000
CapPrm: ffffffffffffffff
CapEff: ffffffffffffffff
CapBnd: ffffffffffffffff
Cpus_allowed:   3
Cpus_allowed_list:      0-1
Mems_allowed:   1
Mems_allowed_list:      0
voluntary_ctxt_switches:        7
nonvoluntary_ctxt_switches:     5

Irgendwer eine Idee?
Das Kommando das getriggert wird ist z.B: ‚LCN_SetLamp(30736, 5, „A“);‘

Danke,
Thorsten

Hallo,

ich habe im „KNX/EIB, LCN“ Forum eine weitere FVrage gepostet: LCN komanndos pro Sekunde

Irgendwie habe ich gerade den Verdacht, das könnte mit meinen hängenden Prozessen zusammenhängen.

Wenn zu viele LCN Kommandos innerhalb einer zu kurzen Zeit (ich glaube so 8/Sek) in den BUS geschickt werden, kann es zu Problemen kommen. Meine Erwartung wäre jetzt, dass IPS das abfängt, indem es die Aufrufe in den Bus „managed“.

–> Wenn es zu viele werden einfach kurz warten. Fänd ich OK.

Wenn jetzt das Warten aber einen kleinen Fehler entält, könnte es passieren, dass das Absetzen des Kommandos ewig dauert.

Wäre das denkbar? Ich habe gestern nach meinem Post alle Prozesse abgeschossen (34 Stück) und jetzt haben ich wieder 8 runhängen…

Hat jemand eine Idee wie ich den Grund fürs „schafen“ nachvollziehen kann? eigentlich hätte ich eher mit einem I/O wait gerechnet…

Danke,
Thorsten

Hallo,

hmpf…
Das gute wenn man solche Probleme in einem Forum schildert ist, dass man sich intensiv damit beschäftigt.

Ich habe jetzt folgendes entdeckt:
In der Prozessliste steht ja die Event ID drin. Die 2 Events die am häufigsten auftauchen hatten beide das Häkchen „Nachfolgende Ereignisse ausführen“ gesetzt.

Nachdem ich das entfernt habe ist nichts mehr hängen geblieben.

Könnte das auch der Grund gewesen sein?

Gruß,
Thorsten