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

Unprintable character in executor name in JSON API output

XMLWordPrintable

      After upgrading to the 1.460 version of Jenkins, we noticed that when a build was waiting for an executor, if you hovered over the build in the wall display, it would say "Waiting for next available executor on [ESC][8mha:AAAAiR+LCAAAAAAAAABb85aBtbiIQSajNKU4P08vOT+vOD8nVc+jsiC1KCczL9svvyT1dMUiOWdZ/mImBiZPBrac1Lz0kgwfBubSopwSBiGfrMSyRP2cxLx0/eCSosy8dOuKIgYpNOOcITTIMAYIYGRiYKgoALFKGLj0k/NzC0pLUov0ATz5UcyPAAAA[ESC][0m"

      The [ESC] was actually the ASCII/ANSI escape character 0x1B.

      When we attempt to use the JSON API to get the status of builds, our script (Ruby) fails to parse the JSON due to invalid escape characters in the string:

      "why":"Waiting for next available executor on [8mha:AAAAiR+LCAAAAAAAAABb85aBtbiIQSajNKU4P08vOT+vOD8nVc+jsiC1KCczL9svvyT1dMUiOWdZ/mImBiZPBrac1Lz0kgwfBubSopwSBiGfrMSyRP2cxLx0/eCSosy8dOuKIgYpNOOcITTIMAYIYGRiYKgoALFKGLj0k/NzC0pLUov0ATz5UcyPAAAA[0m"

      Before the [8mha and the [0m there is the invisible 0x1B escape character.

      When we click on the waiting build in the UI to view the build details, it says (correctly) "#1849 (pending - Waiting for next available executor on master )"

      "master" is the name of our primary build server/executor.

      I have no idea where the big [8mhz:AAAAiR... stuff is coming from.

            Unassigned Unassigned
            chadmyers Chad Myers
            Votes:
            2 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: