Ankündigung

Einklappen
Keine Ankündigung bisher.

Vorkompilieren von WG-Plugins, möglicher Fix für bisherige Memleaks

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

    #31
    erledigt...
    Grüsse Bodo
    Fragen gehören ins Forum, und nicht in mein Postfach;
    EibPC-Fan; Wiregate-Fan; Timberwolf-Fan mit 30x 1-Wire Sensoren;

    Kommentar


      #32
      Zitat von derwolff2010 Beitrag anzeigen
      Ich kann gerne die gepatchte KNXD Version hochladen. Ich muss nur meine speziellen Änderungen rausnehmen.
      Danke, schiebe ich die Tage dann mal hoch...kannst Du sonst aber auch gern machen falls SVN-Zugang vorhanden.
      Umgezogen? Ja! ... Fertig? Nein!
      Baustelle 2.0 !

      Kommentar


        #33
        Zitat von jensgulow Beitrag anzeigen
        @ Alle: Vielleicht wäre es möglich hier auch seine "Modifikationen" der plugins zu veröffentlichen, wie sie mit Fry's gepatchtem wiregated.pl laufen (ich meine wie z.B. habt ihr erfolgreich den plugin_cache genutzt etc...)
        Ich habe folgende Plugins so modifiziert, dass sie kompilierbar werden:

        Code:
        Ansagen.pl (Plugin funktioniert, allerdings ist mein MPD momentan verbogen, so dass die Ansagen bei mir stottern - liegt aber wie gesagt nicht am Plugin!)
        
        Anwesenheitssimulation.pl (ungetestet)
        
        Heizungsregler.pl
        
        Logikprozessor.pl
        
        Russound_RIO.pl (von ChrisM)
        
        Szenencontroller.pl
        sowie drei Plugins, die nur speziell für meine Installation gelten (Schluesselbrett, Alarmanlage und Heizungsanbindung per Ebus).

        Anbei habe ich die oben aufgelisteten Plugins gepackt als .tgz angehängt (umbenennen in wg.tgz, entpacken mit tar xvzf wg.tgz). Wie immer ohne Gewähr! - es kann sein, dass einzelne Änderungen drin sind, die nur für meine Installation funktionieren. Config-Samples sind dabei.

        Der Einfachheit halber habe ich auch den wiregated.pl dazu gepackt (ist aber unverändert von der letzten Version oben).

        Mit dem Einstellen dieser Plugins ins SVN möchte ich warten, dass StefanW oder Makki ihr Einverständnis geben.

        VG, Fry
        Angehängte Dateien

        Kommentar


          #34
          Hoi

          Das mit dem Logikprozessor.pl hab' ich jetzt kapiert. (hatte keine conf)
          Alles klar.
          Grüsse Bodo
          Fragen gehören ins Forum, und nicht in mein Postfach;
          EibPC-Fan; Wiregate-Fan; Timberwolf-Fan mit 30x 1-Wire Sensoren;

          Kommentar


            #35
            Ich möchte das Thema gerne wieder hervorholen.

            Wie sind denn nun die Langzeiterfahrungen derjenigen die das bei sich so umgesetzt haben mit dem "vorkompilieren" der Plugins?

            lg

            Stefan

            Kommentar


              #36
              Meine Erfahrungen sind so, dass es für mich kein Zurück mehr gibt, sowohl was das Vorkompilieren betrifft als auch das notwendige globale Hash %plugin_cache. Beides zusammen reduziert die notwendigen Filesystemzugriffe, erhöht damit die Geschwindigkeit der Plugins, und gefühlt auch die Stabilität. Der Logikprozessor läuft bei mir nun mit ca. 400 Logiken problemlos.
              VG, Fry

              Kommentar


                #37
                Hallo zusammen,

                bei mir läuft das absolut positiv ohne Probleme! Für mich gibts auch kein zurück mehr. Der tägliche Restart wegen memory - leak gehört der Vergangenheit an. Nun habe ich eine stabile Speicherauslastung umra. 18 MB. Vorher hat monit den wiregated bei 50 MB gekillt (eigene Werte). Das war mindestens einmal in 18 Stunden.
                Zugegeben, man muss die Plugins "compile ready" machen.
                Aktuell habe ich ca. 60 Plugins mit Logiken, Zeitschaltuhren, Zählerständen u.ä laufen. (Ich hab für jede Logik ein eigenes Plugin)



                vG
                Wolfgang

                Kommentar


                  #38
                  Zitat von jensgulow Beitrag anzeigen
                  @ Fry: Woran merke ich denn eigentlich, dass die plugins erfolgreich kompiliert wurden?

                  Habe den Verdacht, dass da bei mir so ein/zwei Kandidaten dabei sind, welche noch so arbeiten wie früher, obwohl die genannten Modifikationen eingepflegt wurden.
                  Diese Frage würde mich auch interessieren. Woher weiss man, dass ein plugin tatsächlich kompliliert worden ist?
                  Müsste hierzu nicht ein flag in die Plugin Übersicht (als Kennzeichnung für jedes Plugin).
                  Oder steht das zumindest in einer Log Datei?

                  Kommentar


                    #39
                    Siehe /var/log/wiregate_plugin.log
                    Da steht dann sowas wie

                    Code:
                    2013-06-16 22:52:48.730,Logikprozessor.pl,compiled in 0.4s
                    2013-06-16 22:52:48.902,Logikprozessor.pl,272 initialisiert;  ,0.3s,
                    VG, Fry

                    Kommentar


                      #40
                      Ich hab zwar nur drei Plugins am laufen, von denen der Logikprozessor das einzig kompilierte ist, aber ich habe auch den Eindruck, dass die Logiken flüssiger laufen seitdem. Der Patch läuft seit 2 Monaten ohne Probleme.

                      luigi

                      Kommentar


                        #41
                        @Bodo was hast du denn gegen den folgenden Fehler gemacht?

                        Code:
                        2013-08-05 10:29:04.355,Logikprozessor.pl,,0.3s,Global symbol "%plugin_cache" requires explicit package name at (eval 4714) line 68. Global symbol "%plugin_cache" requires explicit package name at (eval 4714) line 272. Global symbol "%plugin_cache" requires explicit package name at (eval 4714) line 273. Global symbol "%plugin_cache" requires explicit package name at (eval 4714) line 278. Global symbol "%plugin_cache" requires explicit package name at (eval 4714) line 279. Global symbol "%plugin_cache" requires explicit package name at (eval 4714) line 934. Global symbol "%plugin_cache" requires explicit package name at (eval 4714) line 1130. BEGIN not safe after errors--compilation aborted at (eval 4714) line 1141.
                        Also ich hatte
                        1. die wiregated.pl-Datei gesichert und dann ersetzt durch die neue von fry
                        2. das Logikprozessor.pl Plugin gesichert, gelöscht und die neue Datei gespeichert
                        3. den Demon neu gestartet per /etc/init.d/wiregated restart

                        Danach bekomme ich die o.g. Fehler und zwar egal ob
                        1. meiner alten Config
                        2. keiner Config
                        3. einer Minimal-Config mit leeren %setings=(); und %logic=();

                        Und irgendwie stehe ich gerade etwas auf dem Schlauch …
                        KNX: MDT, Gira TS3, Berker, Theben, PEAR, Preussen BWM, B.E.G., BMS Quadra, WireGate, Timberwolf 2500 | Baublog

                        Kommentar


                          #42
                          Problem gelöst: wiregated.pl war nicht auf ausführbar gesetzt! chmod half, alles gut!
                          KNX: MDT, Gira TS3, Berker, Theben, PEAR, Preussen BWM, B.E.G., BMS Quadra, WireGate, Timberwolf 2500 | Baublog

                          Kommentar


                            #43
                            Problem nach WG-update

                            Hallo an alle,

                            nach einem Update auf meinem WG (über webmin - updates) spinnt der Logikprozessor mit folgender Fehlermeldung:

                            Code:
                            2013-08-27 22:31:20.462,Logikprozessor.pl,,0.3s,Global symbol "%plugin_cache" requires explicit package name at (eval 353) line 68. Global symbol "%plugin_cache" requires explicit package name at (eval 353) line 272. Global symbol "%plugin_cache" requires explicit package name at (eval 353) line 273. Global symbol "%plugin_cache" requires explicit package name at (eval 353) line 278. Global symbol "%plugin_cache" requires explicit package name at (eval 353) line 279. Global symbol "%plugin_cache" requires explicit package name at (eval 353) line 934. Global symbol "%plugin_cache" requires explicit package name at (eval 353) line 1130. BEGIN not safe after errors--compilation aborted at (eval 353) line 1141.
                            damit haben natürlich auch die nachfolgenden Programme ein Problem (mein Beschattungsplugin sendet nunmehr dauernd Leseanfragen, welche natürlich vom Logikprozessor nicht mehr bearbeitet werden.

                            Kann jemand das Problem identifizieren und ggf. beheben?
                            Viele Grüße Jens

                            Kommentar


                              #44
                              Wie oben geschrieben, braucht der modifizierte Logikprozessor (der mit dem Vorkompilieren) einen modifizierten Daemon wiregated.pl

                              Bei deinem Upgrade ist der wiregated.pl ausgetauscht worden. Laut StefanW bezieht sich das Upgrade aber nur auf einen neuen Sensortyp, der nun unterstützt wird. Falls du den nicht einsetzt, kannst du getrost den oben geposteten wiregated.pl wieder einsetzen und alles sollte wieder klappen.

                              VG, Fry

                              Kommentar


                                #45
                                Danke !!! - Oh Mann und die Lösung stand direkt in den posts davor, welche Schande.....
                                Viele Grüße Jens

                                Kommentar

                                Lädt...
                                X