Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-32137

Flame graph is hard to use with many task managers

    XMLWordPrintableJSON

Details

    Description

      In case there are many task managers executing the same operator, the flame graph becomes very hard to use. As you can see on the attached picture, it considers instances of the same lambda function as different classes, and their number seems to be equal to the number of task managers (i.e. each JVM gets its own "class" name, which is expected for lambdas I guess). This lambda function is deep within Flink's own call stack, so this kind of graph is inevitable regardless of the job's own logic, and there is nothing we can do at the job logic's level to fix it.

      This behavior makes evaluating the flame graph very hard, because all of the useful information gets "compressed" inside each "column" of the graph, and at the same time, it does not give any useful information since this is just an artifact of the class name generation in the JVM.

      Attachments

        1. image (1).png
          159 kB
          Vladimir Matveev
        2. image-2023-05-23-11-01-30-391.png
          167 kB
          Rui Fan

        Issue Links

          Activity

            People

              netvl Vladimir Matveev
              netvl Vladimir Matveev
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: