Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [gelöst] FATAL ERROR: JavaScript heap out of memory

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] FATAL ERROR: JavaScript heap out of memory

    This topic has been deleted. Only users with topic management privileges can see it.
    • Thomas Braun
      Thomas Braun Most Active @mwolle last edited by

      @mwolle

      iob diag
      

      spuckt was genau aus?

      M 1 Reply Last reply Reply Quote 0
      • M
        mwolle @Thomas Braun last edited by

        @thomas-braun

        ======================= SUMMARY =======================
        		     v.2022-12-31
        
        
        Operatingsystem: 	Raspbian GNU/Linux 11 (bullseye)
        Installation: 		Native
        Timezone: 		Europe/Berlin
        User-ID: 		1000
        X-Server: 		true
        Boot Target: 		graphical.target
        
        Pending OS-Updates: 	0
        
        Nodejs-Installation: 	/usr/bin/nodejs 	v16.19.0
        			/usr/bin/node 		v16.19.0
        			/usr/bin/npm 		8.19.3
        
        ioBroker Core: 		js-controller 		4.0.21
        			admin 			6.2.23
        
        
        <--- Last few GCs --->
        
        [5069:0x3fb7e58]    79610 ms: Mark-sweep 957.3 (968.9) -> 957.0 (974.7) MB, 119.3 / 0.0 ms  (average mu = 0.259, current mu = 0.131) allocation failure scavenge might not succeed
        
        
        <--- JS stacktrace --->
        
        FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory
        /usr/bin/iobroker: line 10:  5068 Aborted                 sudo -H -u iobroker node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js "$@"
        ioBroker Status: 	
        
        Status admin:
        
        <--- Last few GCs --->
        
        [5087:0x55d0e88]    79700 ms: Mark-sweep 957.4 (969.2) -> 957.1 (974.7) MB, 130.7 / 0.0 ms  (average mu = 0.245, current mu = 0.137) allocation failure scavenge might not succeed
        
        
        <--- JS stacktrace --->
        
        FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory
        /usr/bin/iobroker: line 10:  5086 Aborted                 sudo -H -u iobroker node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js "$@"
        
        
        <--- Last few GCs --->
        
        [5103:0x5630ef0]    79383 ms: Scavenge 955.0 (967.1) -> 955.0 (968.1) MB, 3.7 / 0.0 ms  (average mu = 0.509, current mu = 0.445) allocation failure 
        [5103:0x5630ef0]    79516 ms: Mark-sweep (reduce) 960.9 (973.4) -> 960.6 (971.7) MB, 77.3 / 0.0 ms  (+ 25.2 ms in 11 steps since start of marking, biggest step 18.0 ms, walltime since start of marking 133 ms) (average mu = 0.426, current mu = 0.351) final
        
        <--- JS stacktrace --->
        
        FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory
        /usr/bin/iob: line 10:  5102 Aborted                 sudo -H -u iobroker node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js "$@"
        Pending iob updates: 	0
        
        
        <--- Last few GCs --->
        
        [5118:0x4f3fef0]    79633 ms: Mark-sweep (reduce) 957.4 (969.9) -> 957.3 (968.2) MB, 32.2 / 0.0 ms  (+ 37.2 ms in 22 steps since start of marking, biggest step 27.4 ms, walltime since start of marking 85 ms) (average mu = 0.411, current mu = 0.292) finali
        
        <--- JS stacktrace --->
        
        FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory
        /usr/bin/iob: line 10:  5117 Aborted                 sudo -H -u iobroker node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js "$@"
        
        Objects: 		0
        States: 		0
        
        Size of iob-Database:
        
        659M	/opt/iobroker/iobroker-data/objects.jsonl
        8.8M	/opt/iobroker/iobroker-data/states.jsonl
        
        
        =================== END OF SUMMARY ====================
        
        
        Thomas Braun Glasfaser 2 Replies Last reply Reply Quote 0
        • Thomas Braun
          Thomas Braun Most Active @mwolle last edited by Thomas Braun

          @mwolle

          Desktop ausschalten.

          Das dürfte der Blockierer sein:

          659M	/opt/iobroker/iobroker-data/objects.jsonl
          
          M 1 Reply Last reply Reply Quote 0
          • M
            mwolle @Thomas Braun last edited by

            @thomas-braun kann ich die Objekte ohne Admin verkleinern noch? Bzw. bekomm eich es noch mal ohne Desktop zum Laufen? (Weil Speicher frei?)

            Thomas Braun 1 Reply Last reply Reply Quote 0
            • Thomas Braun
              Thomas Braun Most Active @mwolle last edited by

              @mwolle

              Ich glaube @apollon77 hatte mal irgendwann und irgendwo eine Anleitung dagelassen wie man das 'zu Fuß' machen kann.

              Und einen Desktop betreibt man grundsätzlich nicht auf einem Server. Vollkommen unabhängig vom java heap.

              Glasfaser 1 Reply Last reply Reply Quote 0
              • Glasfaser
                Glasfaser @Thomas Braun last edited by

                @thomas-braun

                siehe hier :
                https://forum.iobroker.net/topic/60172/test-iobroker-fixer-mit-jsonl-compression

                Du hast auch gesehen , das er nicht auf den aktuelle stand ist ...

                OLD ...

                ioBroker Core: 		js-controller 		4.0.21
                
                			admin 			6.2.23
                
                Thomas Braun M 2 Replies Last reply Reply Quote 0
                • Thomas Braun
                  Thomas Braun Most Active @Glasfaser last edited by Thomas Braun

                  @glasfaser sagte in FATAL ERROR: JavaScript heap out of memory nach node Update:

                  Du hast auch gesehen , das er nicht auf den aktuelle stand ist ...

                  Klar, mit neuem js-controller wäre das ja auch (sehr wahrscheinlich) nicht mehr passiert.

                  Deswegen halt die Gebetsmühle anleiern:

                  Haltet den Kram auf einem aktuellen Stand!

                  1 Reply Last reply Reply Quote 0
                  • M
                    mwolle @Glasfaser last edited by

                    @glasfaser ich wollte es gerade ja updaten...Compression geht leider auch nicht (mehr)

                        Database maintenance (3/4)
                    ==========================================================================
                    
                    Checking for uncompressed JSONL databases... This might take a while!
                    
                    Compressing /opt/iobroker/iobroker-data/states.jsonl
                    Compressing /opt/iobroker/iobroker-data/objects.jsonl
                    
                    <--- Last few GCs --->
                    
                    [6084:0x4474f28]    19212 ms: Scavenge 951.0 (962.6) -> 950.8 (968.4) MB, 6.0 / 0.0 ms  (average mu = 0.708, current mu = 0.713) allocation failure 
                    [6084:0x4474f28]    19278 ms: Mark-sweep (reduce) 956.3 (973.7) -> 956.2 (966.7) MB, 35.9 / 0.0 ms  (+ 2.7 ms in 5 steps since start of marking, biggest step 2.6 ms, walltime since start of marking 66 ms) (average mu = 0.672, current mu = 0.625) finalize 
                    
                    <--- JS stacktrace --->
                    
                    FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory
                    Aborted
                    
                    
                    Thomas Braun 1 Reply Last reply Reply Quote 0
                    • Glasfaser
                      Glasfaser @mwolle last edited by

                      @mwolle sagte in FATAL ERROR: JavaScript heap out of memory nach node Update:

                      659M /opt/iobroker/iobroker-data/objects.jsonl

                      zeige mal :

                      du -sh  /opt/iobroker/iobroker-data/backup-objects/*objects*
                      
                      M 1 Reply Last reply Reply Quote 0
                      • M
                        mwolle @Glasfaser last edited by

                        @glasfaser

                        du -sh  /opt/iobroker/iobroker-data/backup-objects/*objects*
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-03_07-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-03_09-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-03_11-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-03_13-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-03_15-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-03_17-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-03_19-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-03_21-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-03_23-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-04_01-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-04_03-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-04_05-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-04_07-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-04_09-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-04_11-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-04_13-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-04_15-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-04_17-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-04_19-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-04_21-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-04_23-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-05_01-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-05_03-51_objects.jsonl.gz
                        1,6M	/opt/iobroker/iobroker-data/backup-objects/2023-01-05_05-51_objects.jsonl.gz
                        
                        Glasfaser 1 Reply Last reply Reply Quote 0
                        • Glasfaser
                          Glasfaser @mwolle last edited by Glasfaser

                          @mwolle

                          iobroker stop
                          
                          cd /opt/iobroker/iobroker-data/
                          
                          mv objects.jsonl objects.jsonl.old
                          
                          cd backup-objects/
                          gunzip -ck 2023-01-03_07-51_objects.jsonl.gz > /opt/iobroker/iobroker-data/objects.jsonl
                          
                          iobroker start
                          
                          M 1 Reply Last reply Reply Quote 1
                          • Thomas Braun
                            Thomas Braun Most Active @mwolle last edited by

                            @mwolle

                            Oder versucht mal (wenn npm>7 ist)

                            npm x --yes @iobroker/jsonltool@latest /opt/iobroker/iobroker-data
                            
                            M 1 Reply Last reply Reply Quote 1
                            • M
                              mwolle @Thomas Braun last edited by

                              @thomas-braun

                              npm -v
                              8.19.3
                              
                              
                              npm x --yes @iobroker/jsonltool@latest /opt/iobroker/iobroker-data
                              Compressing /opt/iobroker/iobroker-data/states.jsonl
                              Cannot compress states.jsonl: Error: Failed to lock DB file "/opt/iobroker/iobroker-data/states.jsonl"!
                                  at JsonlDB.open (/home/iobroker/.npm/_npx/36bee06d4228a674/node_modules/@alcalzone/jsonl-db/build/lib/db.js:185:19)
                                  at async compressDB (/home/iobroker/.npm/_npx/36bee06d4228a674/node_modules/@iobroker/jsonltool/index.js:37:9)
                                  at async main (/home/iobroker/.npm/_npx/36bee06d4228a674/node_modules/@iobroker/jsonltool/index.js:78:17)
                              Compressing /opt/iobroker/iobroker-data/objects.jsonl
                              Cannot compress objects.jsonl: Error: Failed to lock DB file "/opt/iobroker/iobroker-data/objects.jsonl"!
                                  at JsonlDB.open (/home/iobroker/.npm/_npx/36bee06d4228a674/node_modules/@alcalzone/jsonl-db/build/lib/db.js:185:19)
                                  at async compressDB (/home/iobroker/.npm/_npx/36bee06d4228a674/node_modules/@iobroker/jsonltool/index.js:37:9)
                                  at async main (/home/iobroker/.npm/_npx/36bee06d4228a674/node_modules/@iobroker/jsonltool/index.js:93:17)
                              No relevant JSONL files found to compress, skip
                              
                              Thomas Braun 1 Reply Last reply Reply Quote 0
                              • Thomas Braun
                                Thomas Braun Most Active @mwolle last edited by

                                @mwolle

                                iob stoppen
                                und schauen ob noch Prozesse herumgeistern.

                                M 1 Reply Last reply Reply Quote 0
                                • M
                                  mwolle @Glasfaser last edited by

                                  @glasfaser

                                  iobroker stop
                                   cd /opt/iobroker/iobroker-data/
                                  mv objects.jsonl objects.jsonl.old
                                  cd backup-objects/
                                  gunzip -ck 2023-01-03_07-51_objects.jsonl.gz > /opt/iobroker/iobroker-data/objects.jsonl
                                  iobroker start
                                  

                                  das scheint funktioniert zu haben, zumindest konnte ich jetzt Komprimieren und ein iob update klappte wieder

                                  1 Reply Last reply Reply Quote 1
                                  • M
                                    mwolle @Thomas Braun last edited by

                                    @thomas-braun ja das hat sich mit dem anderem Verfahren überschnitten. Komprimieren klappte nun

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

                                      Also ich fasse zusammen: Eine <770MB objects.json konnte bei 1,6GB "free" speicher nicht komprimiert werden? und iobroker war zu dem zeitounkt auch gestoppt? Was bracuht dann 2GB RAM ? aber naja ok... ihr habt es hinbekommen ... für mich passt da was nicht zusammen

                                      Thomas Braun 1 Reply Last reply Reply Quote 0
                                      • Thomas Braun
                                        Thomas Braun Most Active @apollon77 last edited by

                                        @apollon77 sagte in [gelöst] FATAL ERROR: JavaScript heap out of memory:

                                        für mich passt da was nicht zusammen

                                        Stimmt, kam mir eigentlich auch seltsam vor.

                                        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

                                        400
                                        Online

                                        31.9k
                                        Users

                                        80.2k
                                        Topics

                                        1.3m
                                        Posts

                                        4
                                        19
                                        1263
                                        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