Uploaded image for project: 'Ignite'
  1. Ignite
  2. IGNITE-9305

Wrong off-heap size is reported for a node

    XMLWordPrintableJSON

Details

    • Task
    • Status: Resolved
    • Blocker
    • Resolution: Fixed
    • 2.6
    • 2.7
    • None
    • None

    Description

      Was troubleshooting an Ignite deployment today and couldn't find out from the logs what was the actual off-heap space used.

      Those were the given memory resoures (Ignite 2.6):

      [2018-08-16 15:07:49,961][INFO ][main][GridDiscoveryManager] Topology snapshot [ver=1, servers=1, clients=0, CPUs=64, offheap=30.0GB, heap=24.0GB]
      

      And that weird stuff was reported by the node (pay attention to the last line):

      [2018-08-16 15:45:50,211][INFO ][grid-timeout-worker-#135%cluster_31-Dec-2017%][IgniteKernal%cluster_31-Dec-2017] 
      Metrics for local node (to disable set 'metricsLogFrequency' to 0)
          ^-- Node [id=c033026e, name=cluster_31-Dec-2017, uptime=00:38:00.257]
          ^-- H/N/C [hosts=1, nodes=1, CPUs=64]
          ^-- CPU [cur=0.03%, avg=5.54%, GC=0%]
          ^-- PageMemory [pages=6997377]
          ^-- Heap [used=9706MB, free=61.18%, comm=22384MB]
          ^-- Non heap [used=144MB, free=-1%, comm=148MB] - this line is always the same!
      

      Had to change the code by using

      dataRegion.getPhysicalMemoryPages()

      to find out that actual off-heap usage size was

      >>> Physical Memory Size: 28651614208 => 27324 MB, 26 GB
      

      The logs have to report the following instead:

       ^-- Off-heap {Data Region 1} [used={dataRegion1.getPhysicalMemorySize()}, free=X%, comm=dataRegion1.maxSize()]
       ^-- Off-heap {Data Region 2} [used={dataRegion2.getPhysicalMemorySize()}, free=X%, comm=dataRegion2.maxSize()]
      

      If Ignite persistence is enabled then the following extra lines have to be added to see the disk used space:

       ^-- Ignite persistence {Data Region 1}: used={dataRegion1.getTotalAllocatedSize() - dataRegion1.getPhysicalMemorySize()}
       ^-- Ignite persistence {Data Region 2} [used={dataRegion2.getTotalAllocatedSize() - dataRegion2.getPhysicalMemorySize()}]
      

      Attachments

        Issue Links

          Activity

            People

              xtern Pavel Pereslegin
              dmagda Denis A. Magda
              Votes:
              0 Vote for this issue
              Watchers:
              10 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: