Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-61383

Current new messages detection mechanism is not working for simple line insertion in case of many similar adjacent warning

      Summary

      1)  Warning-ng  marks messages as new although they are outstanding in some cases.

      2)  When it happens more then once it also might mess the age information.

      It seems that adding git forensics might help to improve the detection algorithm. Some thoughts about what can be done will be added as a comment.

       

      The problem 

      As you can see the message at line 9264 was marked as new therefore it's age was reset to 1.

      but all lines were committed at the same time (only part of the line is shown) and were not changed in the last years. 

       

      Moreover every build that the detection fails gets new referenceId for that message and as a result the Age of the warning is reset to 1. 

      As a result after some builds with changes on other lines the age of lines that were committed together might be totally messed up as can be seen below. 

      you can see that for the same commit we get different ages. 

       

      The reason is that those messages were identified (incorrectly) as new along the time and their age was reset to 1 at the time.

       

      see the 502_diff.xlsx attachment for more details 

       

        1. new_report_head.JPG
          new_report_head.JPG
          43 kB
        2. blames_screen.JPG
          blames_screen.JPG
          159 kB
        3. blame_cmd2.JPG
          blame_cmd2.JPG
          191 kB
        4. 502_diff.xlsx
          26 kB

          [JENKINS-61383] Current new messages detection mechanism is not working for simple line insertion in case of many similar adjacent warning

          Why Name created issue -
          Why Name made changes -
          Environment Original: Jenkins 2.204.5
          warning-ng 8.1.0
          New: Jenkins 2.204.5
          warning-ng 8.1.0
          Git Forensics 0.7.0
          Why Name made changes -
          Attachment New: 502_diff.xlsx [ 50609 ]
          Ulli Hafner made changes -
          Link New: This issue is blocked by JENKINS-6675 [ JENKINS-6675 ]
          Ulli Hafner made changes -
          Priority Original: Critical [ 2 ] New: Major [ 3 ]
          Ulli Hafner made changes -
          Summary Original: warning-ng reports warning to be new based on false git forensics report New: Use information from git forensics to improve detection of new warnings
          Ulli Hafner made changes -
          Issue Type Original: Bug [ 1 ] New: Improvement [ 4 ]
          Why Name made changes -
          Issue Type Original: Improvement [ 4 ] New: Bug [ 1 ]
          Why Name made changes -
          Summary Original: Use information from git forensics to improve detection of new warnings New: Current new messages detection mechanism is not working for simple line insertion in case of many similar adjacent warning
          Why Name made changes -
          Description Original: Warning-ng  reports different ages for lines that have the same commit.

          As a result when the reported age is 1 it also reports it as "new" warning which is wrong.

          here  !blames_screen.JPG! you can see that for the same commit we get different ages. 

           

          which cause it to be reported as new  !new_report_head.JPG!

          but all lines were committed at the same time (only part of the line is shown) and were not changed in the last years. 

          !blame_cmd2.JPG!

           

           
          New: h2. Summary



          1)  Warning-ng  marks messages as new although they are outstanding in some cases.

          2)  When it happens more then once it also might mess the age information.

          It seems that adding git forensics might help to improve the detection algorithm. Some thoughts about what can be done will be added as a comment.

           
          h3. The problem 

          As you can see the message at line 9264 was marked as new therefore it's age was reset to 1.

          !new_report_head.JPG!

          but all lines were committed at the same time (only part of the line is shown) and were not changed in the last years. 

          !blame_cmd2.JPG!

           


          Moreover every build that the detection fails gets new referenceId for that message and as a result the Age of the warning is reset to 1. 

          As a result after some builds with *changes on other lines* the age of lines that were committed together might be totally messed up as can be seen below. 

          !blames_screen.JPG! you can see that for the same commit we get different ages. 

           

          The reason is that those messages were identified (incorrectly) as new along the time and their age was reset to 1 at the time.

           

          see the [^502_diff.xlsx] attachment for more details 

           
          Ulli Hafner made changes -
          Link New: This issue relates to JENKINS-61392 [ JENKINS-61392 ]

            drulli Ulli Hafner
            gainful_gary Why Name
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: