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

BlueOcean: tests throws javascript error when duration is NaN

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Critical Critical
    • blueocean-plugin
    • None
    • Jenkins 2.230 (also in previous versions)
      all plug-ins up to date

      When viewing tests, 'Existing failures' remains 'Loading...':

      The javascript console shows an error:

      blueocean-core-js.js:58316 Error fetching page SyntaxError: Unexpected token N in JSON at position 60954
      SyntaxError: Unexpected token N in JSON at position 60954
      (anonymous) @ blueocean-core-js.js:58316
      

      Upon inspecting the json returned by /blue/rest/organizations/jenkins/pipelines/7.29/pipelines/work/runs/285/tests/?status=FAILED&state=%21REGRESSION&start=0&limit=101, at position 60954 a NaN has populated a duration:

      ...,"age":10,"duration":NaN,"errorDetails":null,"errorStackTrace":"...
      

      The classic pipeline does not have this problem and shows the NaN as 0 ms

          [JENKINS-61889] BlueOcean: tests throws javascript error when duration is NaN

          Stefan Drissen created issue -
          Stefan Drissen made changes -
          Description Original: When viewing tests, 'Existing failures' remains 'Loading...':

           !image-2020-04-14-08-11-09-811.png|thumbnail!

          The javascript console shows an error:

          {code}
          blueocean-core-js.js:58316 Error fetching page SyntaxError: Unexpected token N in JSON at position 60954
          SyntaxError: Unexpected token N in JSON at position 60954
          (anonymous) @ blueocean-core-js.js:58316
          Promise.catch (async)
          fetchNextPage @ blueocean-core-js.js:58315
          executeAction @ blueocean-core-js.js:40833
          res @ blueocean-core-js.js:40805
          Pager @ blueocean-core-js.js:58278
          lazyPager @ jenkins-js-extension.js:100106
          getPager @ blueocean-core-js.js:58511
          newExistingFailedPager @ jenkins-js-extension.js:100103
          TestResults._initPagers @ jenkins-js-extension.js:99933
          TestResults.componentWillMount @ jenkins-js-extension.js:99924
          target.<computed> @ jenkins-js-extension.js:54769
          performInitialMount @ jenkins-design-language.js:49122
          mountComponent @ jenkins-design-language.js:49029
          mountComponent @ jenkins-design-language.js:55369
          mountChildren @ jenkins-design-language.js:54331
          _createInitialChildren @ jenkins-design-language.js:50457
          mountComponent @ jenkins-design-language.js:50276
          mountComponent @ jenkins-design-language.js:55369
          performInitialMount @ jenkins-design-language.js:49142
          mountComponent @ jenkins-design-language.js:49029
          mountComponent @ jenkins-design-language.js:55369
          updateChildren @ jenkins-design-language.js:48692
          _reconcilerUpdateChildren @ jenkins-design-language.js:54306
          _updateChildren @ jenkins-design-language.js:54405
          updateChildren @ jenkins-design-language.js:54392
          _updateDOMChildren @ jenkins-design-language.js:50696
          updateComponent @ jenkins-design-language.js:50514
          receiveComponent @ jenkins-design-language.js:50476
          receiveComponent @ jenkins-design-language.js:55448
          updateChildren @ jenkins-design-language.js:48680
          _reconcilerUpdateChildren @ jenkins-design-language.js:54306
          _updateChildren @ jenkins-design-language.js:54405
          updateChildren @ jenkins-design-language.js:54392
          _updateDOMChildren @ jenkins-design-language.js:50696
          updateComponent @ jenkins-design-language.js:50514
          receiveComponent @ jenkins-design-language.js:50476
          receiveComponent @ jenkins-design-language.js:55448
          _updateRenderedComponent @ jenkins-design-language.js:49525
          _performComponentUpdate @ jenkins-design-language.js:49495
          updateComponent @ jenkins-design-language.js:49416
          receiveComponent @ jenkins-design-language.js:49318
          receiveComponent @ jenkins-design-language.js:55448
          updateChildren @ jenkins-design-language.js:48680
          _reconcilerUpdateChildren @ jenkins-design-language.js:54306
          _updateChildren @ jenkins-design-language.js:54405
          updateChildren @ jenkins-design-language.js:54392
          _updateDOMChildren @ jenkins-design-language.js:50696
          updateComponent @ jenkins-design-language.js:50514
          receiveComponent @ jenkins-design-language.js:50476
          receiveComponent @ jenkins-design-language.js:55448
          _updateRenderedComponent @ jenkins-design-language.js:49525
          _performComponentUpdate @ jenkins-design-language.js:49495
          updateComponent @ jenkins-design-language.js:49416
          receiveComponent @ jenkins-design-language.js:49318
          receiveComponent @ jenkins-design-language.js:55448
          _updateRenderedComponent @ jenkins-design-language.js:49525
          _performComponentUpdate @ jenkins-design-language.js:49495
          updateComponent @ jenkins-design-language.js:49416
          receiveComponent @ jenkins-design-language.js:49318
          receiveComponent @ jenkins-design-language.js:55448
          updateChildren @ jenkins-design-language.js:48680
          _reconcilerUpdateChildren @ jenkins-design-language.js:54306
          _updateChildren @ jenkins-design-language.js:54405
          updateChildren @ jenkins-design-language.js:54392
          _updateDOMChildren @ jenkins-design-language.js:50696
          updateComponent @ jenkins-design-language.js:50514
          receiveComponent @ jenkins-design-language.js:50476
          receiveComponent @ jenkins-design-language.js:55448
          _updateRenderedComponent @ jenkins-design-language.js:49525
          _performComponentUpdate @ jenkins-design-language.js:49495
          updateComponent @ jenkins-design-language.js:49416
          receiveComponent @ jenkins-design-language.js:49318
          receiveComponent @ jenkins-design-language.js:55448
          _updateRenderedComponent @ jenkins-design-language.js:49525
          _performComponentUpdate @ jenkins-design-language.js:49495
          updateComponent @ jenkins-design-language.js:49416
          receiveComponent @ jenkins-design-language.js:49318
          receiveComponent @ jenkins-design-language.js:55448
          updateChildren @ jenkins-design-language.js:48680
          _reconcilerUpdateChildren @ jenkins-design-language.js:54306
          _updateChildren @ jenkins-design-language.js:54405
          updateChildren @ jenkins-design-language.js:54392
          _updateDOMChildren @ jenkins-design-language.js:50696
          updateComponent @ jenkins-design-language.js:50514
          receiveComponent @ jenkins-design-language.js:50476
          receiveComponent @ jenkins-design-language.js:55448
          _updateRenderedComponent @ jenkins-design-language.js:49525
          _performComponentUpdate @ jenkins-design-language.js:49495
          updateComponent @ jenkins-design-language.js:49416
          receiveComponent @ jenkins-design-language.js:49318
          receiveComponent @ jenkins-design-language.js:55448
          _updateRenderedComponent @ jenkins-design-language.js:49525
          _performComponentUpdate @ jenkins-design-language.js:49495
          updateComponent @ jenkins-design-language.js:49416
          receiveComponent @ jenkins-design-language.js:49318
          receiveComponent @ jenkins-design-language.js:55448
          _updateRenderedComponent @ jenkins-design-language.js:49525
          _performComponentUpdate @ jenkins-design-language.js:49495
          updateComponent @ jenkins-design-language.js:49416
          receiveComponent @ jenkins-design-language.js:49318
          receiveComponent @ jenkins-design-language.js:55448
          _updateRenderedComponent @ jenkins-design-language.js:49525
          _performComponentUpdate @ jenkins-design-language.js:49495
          updateComponent @ jenkins-design-language.js:49416
          receiveComponent @ jenkins-design-language.js:49318
          receiveComponent @ jenkins-design-language.js:55448
          updateChildren @ jenkins-design-language.js:48680
          _reconcilerUpdateChildren @ jenkins-design-language.js:54306
          _updateChildren @ jenkins-design-language.js:54405
          updateChildren @ jenkins-design-language.js:54392
          _updateDOMChildren @ jenkins-design-language.js:50696
          updateComponent @ jenkins-design-language.js:50514
          receiveComponent @ jenkins-design-language.js:50476
          receiveComponent @ jenkins-design-language.js:55448
          updateChildren @ jenkins-design-language.js:48680
          _reconcilerUpdateChildren @ jenkins-design-language.js:54306
          _updateChildren @ jenkins-design-language.js:54405
          updateChildren @ jenkins-design-language.js:54392
          _updateDOMChildren @ jenkins-design-language.js:50696
          updateComponent @ jenkins-design-language.js:50514
          receiveComponent @ jenkins-design-language.js:50476
          receiveComponent @ jenkins-design-language.js:55448
          _updateRenderedComponent @ jenkins-design-language.js:49525
          _performComponentUpdate @ jenkins-design-language.js:49495
          updateComponent @ jenkins-design-language.js:49416
          receiveComponent @ jenkins-design-language.js:49318
          receiveComponent @ jenkins-design-language.js:55448
          _updateRenderedComponent @ jenkins-design-language.js:49525
          _performComponentUpdate @ jenkins-design-language.js:49495
          updateComponent @ jenkins-design-language.js:49416
          receiveComponent @ jenkins-design-language.js:49318
          receiveComponent @ jenkins-design-language.js:55448
          _updateRenderedComponent @ jenkins-design-language.js:49525
          _performComponentUpdate @ jenkins-design-language.js:49495
          updateComponent @ jenkins-design-language.js:49416
          performUpdateIfNecessary @ jenkins-design-language.js:49332
          performUpdateIfNecessary @ jenkins-design-language.js:55480
          runBatchedUpdates @ jenkins-design-language.js:56660
          perform @ jenkins-design-language.js:58297
          perform @ jenkins-design-language.js:58297
          perform @ jenkins-design-language.js:56599
          flushBatchedUpdates @ jenkins-design-language.js:56682
          closeAll @ jenkins-design-language.js:58363
          perform @ jenkins-design-language.js:58310
          batchedUpdates @ jenkins-design-language.js:52883
          batchedUpdates @ jenkins-design-language.js:56607
          dispatchEvent @ jenkins-design-language.js:53220
          {code}
          New: When viewing tests, 'Existing failures' remains 'Loading...':

          !image-2020-04-14-08-11-09-811.png|thumbnail!

          The javascript console shows an error:
          {code:java}
          blueocean-core-js.js:58316 Error fetching page SyntaxError: Unexpected token N in JSON at position 60954
          SyntaxError: Unexpected token N in JSON at position 60954
          (anonymous) @ blueocean-core-js.js:58316
          {code}

          Upon inspecting the json returned by /blue/rest/organizations/jenkins/pipelines/7.29/pipelines/work/runs/285/tests/?status=FAILED&state=%21REGRESSION&start=0&limit=101, at position 60954 a NaN has populated a duration:

          {code}
          ...,"age":10,"duration":NaN,"errorDetails":null,"errorStackTrace":"...
          {code}

          The classic pipeline does not have this problem and shows the NaN as 0 ms

          Stefan Drissen made changes -
          Summary Original: BlueOcean: tests / existing failures results in javascript error New: BlueOcean: tests throws javascript error when duration is NaN

            Unassigned Unassigned
            smd Stefan Drissen
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: