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

Remote console output treated as JSON array

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • None
    • Operating System: RHEL 7.6 Linux 64 bit, Kernel 4.12.14-95.6-default
      JDK: OpenJDK 1.8.0_222
      Jenkins (standalone) version: 2.176.3
      parameterized-remote-trigger-plugin version: 3.0.9
    • v3.1.1

      Since the update of the plugin from 3.0.8 to 3.0.9 we occasionally get an exception while printing the remote console log:

      hudson.remoting.ProxyException: net.sf.json.JSONException: Expected a ',' or ']' at character 15 of [2019-09-06T02:38:29.944Z] f6a8849a53bd: Pushed
      	at net.sf.json.util.JSONTokener.syntaxError(JSONTokener.java:499)
      	at net.sf.json.JSONArray._fromJSONTokener(JSONArray.java:1182)
      	at net.sf.json.JSONArray._fromString(JSONArray.java:1192)
      	at net.sf.json.JSONArray.fromObject(JSONArray.java:127)
      	at net.sf.json.JSONSerializer.toJSON(JSONSerializer.java:137)
      	at net.sf.json.JSONSerializer.toJSON(JSONSerializer.java:103)
      	at net.sf.json.JSONSerializer.toJSON(JSONSerializer.java:84)
      	at org.jenkinsci.plugins.ParameterizedRemoteTrigger.utils.HttpHelper.sendHTTPCall(HttpHelper.java:526)
      	at org.jenkinsci.plugins.ParameterizedRemoteTrigger.utils.HttpHelper.tryCall(HttpHelper.java:596)
      	at org.jenkinsci.plugins.ParameterizedRemoteTrigger.utils.HttpHelper.tryGet(HttpHelper.java:616)
      	at org.jenkinsci.plugins.ParameterizedRemoteTrigger.RemoteBuildConfiguration.doGet(RemoteBuildConfiguration.java:908)
      	at org.jenkinsci.plugins.ParameterizedRemoteTrigger.RemoteBuildConfiguration.printOffsetConsoleOutput(RemoteBuildConfiguration.java:881)
      	at org.jenkinsci.plugins.ParameterizedRemoteTrigger.RemoteBuildConfiguration.performWaitForBuild(RemoteBuildConfiguration.java:741)
      	at org.jenkinsci.plugins.ParameterizedRemoteTrigger.pipeline.RemoteBuildPipelineStep$Execution.run(RemoteBuildPipelineStep.java:275)
      	at org.jenkinsci.plugins.ParameterizedRemoteTrigger.pipeline.RemoteBuildPipelineStep$Execution.run(RemoteBuildPipelineStep.java:249)
      	at org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:47)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      	at java.lang.Thread.run(Thread.java:748)
      

      Somehow the timestamp is being interpreted as an JSON array and fails while doing so. This fails the local build while the remote build still succedes. This might be caused by the recent change in PR #54.

      Perhaps there is some kind of JSON auto detection somewhere, when there is a string that looks like a valid json object at the beginning of some buffer?

            cashlalala KaiHsiang Chang
            seaspu Dennis Keitzel
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: