Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Piface adapter nimmt immer mehr RAM

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Piface adapter nimmt immer mehr RAM

    This topic has been deleted. Only users with topic management privileges can see it.
    • greyhound
      greyhound last edited by

      Hallo,

      bin gerade in die RAM-Falle gelaufen und habe meine Außenstelle "verloren". Ist per VPN auf dem Raspberry angebunden und …

      Habe mir nun eine Testumgebung mit einem PiFace2 aufgebaut und mir den Adaptercode angeschaut.

      Für mich sieht es so aus, dass das wiederholte Instanziieren in "adapter.on('stateChange'" ... und "pifaceread" die Ursache ist und der Speicher der beiden Variablen PIFD und pi nicht freigegeben wird, was ich aber eigentlich angenommen hätte.

      Wenn ich die beiden Variablen im Skriptrumpf deklariere und dann in den Funktionen "nur" instanziiere, bleibt der Speicherverbrauch schön bei ca. 30 MB.

      Sieht so aus, als ob die Garbagecollection da ein Problem hat.

      Getestet unter ioBroker.js-controller 15.3, PiFace 0.50 und node 4.7.2 und 6.10

      Gruß

      GH

      1 Reply Last reply Reply Quote 0
      • apollon77
        apollon77 last edited by

        Reich es doch mal als Pull-Request ein …

        1 Reply Last reply Reply Quote 0
        • greyhound
          greyhound last edited by

          gemacht, mal sehen, ob Eisbär noch im Winterschlaf ist.

          1 Reply Last reply Reply Quote 0
          • Eisbaeeer
            Eisbaeeer Developer last edited by

            Hi Leute

            Sorry, dass es doch so lange gedauert hat, aber Familie geht vor usw.

            Hab eben den Merge von Euch beiden gemacht. Danke für die Suche des Problems. Npm ist auch schon aktualisiert. Laut Bluefox wird das update morgen sichtbar.

            Gruß Eisbaeeeer

            1 Reply Last reply Reply Quote 0
            • P
              piForscher last edited by

              Hi,

              es freut mich sehr, dass es eine Lösung für den RAM-Hunger gibt.

              Wie kann ich auf die neue Version updaten ?

              In der GUI bekomme ich die Version 0.0.9 als verfügbar angezeigt, aber ohne Update-Button.

              Per command line habe ich es nicht hinbekommen (sudo iobroker upgrade piface).

              Grüße,

              piForscher

              1 Reply Last reply Reply Quote 0
              • Eisbaeeer
                Eisbaeeer Developer last edited by

                Hmm, Ok. Ich schau nochmal nach. Manuell kannst du es mal im iobroker Verzeichnis: /opt/iobroker mit "npm install iobroker.piface" installieren. Auch hier beschrieben: https://github.com/ioBroker/ioBroker/wi … daptername

                Ich habe die neue Version noch nicht testen können. Wäre also klasse, wenn das noch jemand testet.

                Würde mich über eine Rückmeldung freuen.

                Gruß Eisbaeeer

                1 Reply Last reply Reply Quote 0
                • S
                  sirtwist672 last edited by

                  Hallo

                  Ich hab die neue Version installiert und habe immer noch das RAM Problem

                  Ich lass den Adapter alle 5 min neu starten dann hält sich das problem in grenzen

                  Danke für die Bemühungen

                  Sirtwist

                  1 Reply Last reply Reply Quote 0
                  • Eisbaeeer
                    Eisbaeeer Developer last edited by

                    @sirtwist672:

                    Hallo

                    Ich hab die neue Version installiert und habe immer noch das RAM Problem

                    Sirtwist `

                    Hallo

                    Schade eigentlich. Komischerweise kann ich das Problem bei meiner Installation immer noch nicht nachvollziehen. Die Änderung der Variablen Definition ist mir auch noch nicht ganz schlüssig. Denn eigentlich war die Variable ja schon definiert.

                    Ich muss wohl nochmal einen Testaufbau machen. Welchen RPI verwendest du? Welche Version? Welches Betriebssystem? Eventuell kannst du ein SD-Karten Image mit dem bestehnden Problem zur Verfügung stellen? Dann kann ich das mal bei mir testen.

                    Gruß Eisbaeeer

                    1 Reply Last reply Reply Quote 0
                    • P
                      piForscher last edited by

                      Ich habe jetzt auch auf 0.0.9 aktualisiert - der RAM-Verbrauch hat sich nicht verändert…

                      Ich lasse es erstmal beim nächtlichen Reset des Adapters.

                      1 Reply Last reply Reply Quote 0
                      • Eisbaeeer
                        Eisbaeeer Developer last edited by

                        Also mit einer neu Installierten Umgebung kann ich es nachvollziehen, finde aber die Ursache nicht. Eventuell liegt es an dem node-module, welches ich benutze. Ich habe mal ein issue gemeldet: https://github.com/tualo/node-pifacedigital/issues/6

                        Ich forsche weiter und bleibe dran. Bin für jede Debugging Hilfe dankbar.

                        Grüße Eisbaeeer

                        Eisbaeeer created this issue in tualo/node-pifacedigital

                        closed RAM usage issue #6

                        1 Reply Last reply Reply Quote 0
                        • apollon77
                          apollon77 last edited by

                          Habe gerade mal in den Code geschaut. Muss man wirklich jedes mal wieder eine Instanz der "PIFD1.PIFaceDigital" machen? Auch das Require sollte einmalig am Anfang stehen und nicht mehrfach sein. Das kann man wiederverwenden.

                          Das wäre eine Optimierung die ich vorschlagen würde, vllt reicht das auch schon

                          1 Reply Last reply Reply Quote 0
                          • Eisbaeeer
                            Eisbaeeer Developer last edited by

                            Ok, das schau ich mir gleich mal an. Danke für den Hinweis. Melde mich wieder.

                            Gesendet von meinem SM-G920F mit Tapatalk

                            1 Reply Last reply Reply Quote 0
                            • Eisbaeeer
                              Eisbaeeer Developer last edited by

                              @apollon77:

                              Habe gerade mal in den Code geschaut. Muss man wirklich jedes mal wieder eine Instanz der "PIFD1.PIFaceDigital" machen? Auch das Require sollte einmalig am Anfang stehen und nicht mehrfach sein. Das kann man wiederverwenden. `

                              Hmm, hab ich jetzt alles versucht, jedoch bekomme ich einen Fehler, wenn ich in der Funktion versuche, den die Variable wiederzuverwenden. Ist das nicht so, dass durch das asynchrone abarbeiten der functions die Variable dann falsch verwendet werden kann?

                              Komisch ist auch, dass ich mit einer alten node version diese Probleme nicht hatte. Aber das traue ich node zu, dass es gravierende Änderungen in den node Versionen gibt.

                              Noch einen Tipp?

                              Eisbaeeer

                              1 Reply Last reply Reply Quote 0
                              • apollon77
                                apollon77 last edited by

                                Was kommt denn für ein Fehler? In welchen Node-Version gibt es welche Probleme?

                                1 Reply Last reply Reply Quote 0
                                • Eisbaeeer
                                  Eisbaeeer Developer last edited by

                                  Hallo zusammen

                                  Ich habe heute eine neue Version des Adapters veröffentlicht. Sie wird heute Nacht automatisch ins Repo übernommen und ist dann als Update verfügbar. Wer es heute schon braucht, muss den Adapter aus iobroker löschen und über den Github Button installieren.

                                  Die neue Version behebt das RAM Problem!

                                  Grüße Eisbaeeer

                                  1 Reply Last reply Reply Quote 0
                                  • First post
                                    Last post

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate
                                  FAQ Cloud / IOT
                                  HowTo: Node.js-Update
                                  HowTo: Backup/Restore
                                  Downloads
                                  BLOG

                                  880
                                  Online

                                  32.0k
                                  Users

                                  80.5k
                                  Topics

                                  1.3m
                                  Posts

                                  7
                                  21
                                  2898
                                  Loading More Posts
                                  • Oldest to Newest
                                  • Newest to Oldest
                                  • Most Votes
                                  Reply
                                  • Reply as topic
                                  Log in to reply
                                  Community
                                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                  The ioBroker Community 2014-2023
                                  logo