XCP-ng
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Troubleshooting "TCP: out of memory" - Possible memory leak?

    Scheduled Pinned Locked Moved Unsolved Xen Orchestra
    12 Posts 4 Posters 461 Views 4 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • ForzaF Offline
      Forza @jr-m4
      last edited by Forza

      @jr-m4 said:

      $ cat /proc/sys/net/ipv4/tcp_mem
      90147   120196  180294
      

      Consider increasing your tcp memory buffers.?

      ❯ sysctl -a |grep tcp|grep mem
      net.ipv4.tcp_mem = 372396       496530  744792
      net.ipv4.tcp_rmem = 4096        262144  268435456
      net.ipv4.tcp_wmem = 4096        262144  268435456
      
      J 1 Reply Last reply Reply Quote 0
      • J Offline
        jr-m4 @Forza
        last edited by

        @Forza
        Comparing against the weaker XOCE

        Strong:

        net.ipv4.tcp_mem = 90147        120196  180294
        net.ipv4.tcp_rmem = 4096        131072  6291456
        net.ipv4.tcp_wmem = 4096        16384   4194304
        

        Weak:

        net.ipv4.tcp_mem = 41766        55688   83532
        net.ipv4.tcp_rmem = 4096        131072  6291456
        net.ipv4.tcp_wmem = 4096        16384   4194304
        
        1 Reply Last reply Reply Quote 0
        • poddingueP poddingue marked this topic as a question
        • J Offline
          jr-m4
          last edited by

          Did a much closer look and can indeed confirm that the network capabilities go up from kb/s -> MB/s immediately from xo_server restarts.

          poddingueP 1 Reply Last reply Reply Quote 0
          • poddingueP Online
            poddingue Vates 🪐 @jr-m4
            last edited by

            On the tuning suggestion, my guess, untested and purely from reading your paste, is that if something is genuinely holding sockets then raising tcp_mem buys headroom rather than stopping the accumulation, and your post#4 about throughput coming back on an xo_server restart points the same way. 🤔

            It might be worth a mention to @Team-XO-Backend, since they would know whether xo-server keeps sockets per pool.

            J 1 Reply Last reply Reply Quote 0
            • J Offline
              jr-m4 @poddingue
              last edited by

              @poddingue said:

              On the tuning suggestion, my guess, untested and purely from reading your paste, is that if something is genuinely holding sockets then raising tcp_mem buys headroom rather than stopping the accumulation, and your post#4 about throughput coming back on an xo_server restart points the same way. 🤔

              It might be worth a mention to @Team-XO-Backend, since they would know whether xo-server keeps sockets per pool.

              This is why I'm not increasing the numbers quite yet. Since this would only mask a potential issue. If an underlying cause is responsible, then this would be of interest.

              Thanks for chiming in!

              1 Reply Last reply Reply Quote 1
              • J Offline
                jr-m4
                last edited by

                Looking at it today again. Doing a sudo ss -tp and noticing that there are alot of CLOSE-WAIT. Maybe this is a red herring, or maybe not. I thought I would share the findings regardless.

                The output is also to long for me to be able to paste it in text. So I've attached it as a txt-file.
                close-wait.txt

                1 Reply Last reply Reply Quote 0
                • florentF Offline
                  florent Vates 🪐 XO Team @jr-m4
                  last edited by

                  @jr-m4 you can export the heap memory of the nodeJS process by doing kill -SIGUSER2 <xoserverpid>

                  onte that this will increase a lot the memory consumed by the xo process even when its done exporting the memory . This will help us know what xo is doing at the moment

                  J 2 Replies Last reply Reply Quote 0
                  • J Offline
                    jr-m4 @florent
                    last edited by

                    @florent

                    I'll try to do this when I notice that it is misbehaving again.

                    Thanks!

                    1 Reply Last reply Reply Quote 0
                    • J Offline
                      jr-m4 @florent
                      last edited by jr-m4

                      @florent said:

                      @jr-m4 you can export the heap memory of the nodeJS process by doing kill -SIGUSER2 <xoserverpid>

                      onte that this will increase a lot the memory consumed by the xo process even when its done exporting the memory . This will help us know what xo is doing at the moment

                      Do you have somewhere I can upload the heapsnapshot? (148MB)

                      Ping @poddingue as well, for visibility

                      1 Reply Last reply Reply Quote 0
                      • J Offline
                        jr-m4
                        last edited by

                        @florent & @poddingue

                        I now have to heap snapshots. Could you provide somewhere to upload them, please? And I will do so as soon as I can.

                        1 Reply Last reply Reply Quote 0

                        Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                        Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                        With your input, this post could be even better 💗

                        Register Login
                        • First post
                          Last post