• Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • p4-plugin
    • None

      I'm relatively new to Hudson. There is a particular job that would fail out with the below shown exception but the other jobs would not. This happens with a hit rate of 100% and not an one-off issue. I fear it could be due to a erroneous string parsing while going through the output of 'p4 describe'. If I change the "last changelist to track' to the latest changelist so as to avoid a lot of 'p4 describe' tasks and as expected it just goes through fine.
      If the above speculaion is true then is there a way to track down using hudson logs(where would this be?) on which string does this happen?

      Caught exception communicating with perforce. Failed to retrieve changelist.com.tek42.perforce.PerforceException: Failed to retrieve changelist.
      at com.tek42.perforce.parse.ChangelistBuilder.build(ChangelistBuilder.java:185)
      at com.tek42.perforce.parse.Changes.getChangelist(Changes.java:63)
      at com.tek42.perforce.parse.Changes.getChangelistsFromNumbers(Changes.java:381)
      at hudson.plugins.perforce.PerforceSCM.checkout(PerforceSCM.java:565)
      at hudson.model.AbstractProject.checkout(AbstractProject.java:1116)
      at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:479)
      at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:411)
      at hudson.model.Run.run(Run.java:1324)
      at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
      at hudson.model.ResourceController.execute(ResourceController.java:88)
      at hudson.model.Executor.run(Executor.java:139)
      Caused by: java.util.NoSuchElementException
      at java.util.StringTokenizer.nextToken(StringTokenizer.java:332)
      at com.tek42.perforce.parse.ChangelistBuilder.build(ChangelistBuilder.java:95)
      ... 10 more
      ERROR: Unable to communicate with perforce. Failed to retrieve changelist.

          [JENKINS-8245] Error retrieving perforce change lists

          vkolapan added a comment - - edited

          Its about 217 lines or 15 Kilobytes of text. Also if these are 'random' truncations how am I hitting this issue all the time? Also as a side note, the text contains lot of asterisks '*' and dots '.' and other special characters, which may potentially thwart the regex.

          vkolapan added a comment - - edited Its about 217 lines or 15 Kilobytes of text. Also if these are 'random' truncations how am I hitting this issue all the time? Also as a side note, the text contains lot of asterisks '*' and dots '.' and other special characters, which may potentially thwart the regex.

          Rob Petti added a comment -

          15 MB is a lot of data to handle when there are random truncations happening. It's far more likely that it would happen during a large dump, than a small one. There also simply might be some problem with the remoting functions of hudson that are causing it to fail all the time with a stream that long.

          I'm fairly certain the output is getting truncated, since the stack trace doesn't suggest a parsing issue of any kind. I can maybe code around the exception so your builds can continue, but that will still leave you with a broken change in the changelog.

          Rob Petti added a comment - 15 MB is a lot of data to handle when there are random truncations happening. It's far more likely that it would happen during a large dump, than a small one. There also simply might be some problem with the remoting functions of hudson that are causing it to fail all the time with a stream that long. I'm fairly certain the output is getting truncated, since the stack trace doesn't suggest a parsing issue of any kind. I can maybe code around the exception so your builds can continue, but that will still leave you with a broken change in the changelog.

          Rob Petti added a comment -

          Linking to steam truncation issue in core.

          Rob Petti added a comment - Linking to steam truncation issue in core.

          Rob Petti added a comment -

          Come to think of it, you may want to try installing kohsuke's build of the perforce plugin in issue JENKINS-7664. It has a fix that seems to help reduce the severity of the problem.

          Rob Petti added a comment - Come to think of it, you may want to try installing kohsuke's build of the perforce plugin in issue JENKINS-7664 . It has a fix that seems to help reduce the severity of the problem.

          vkolapan added a comment -

          Sorry, it is 15KB and not 15000 KB. Will check out the perforce plugin u had suggested. Thanks.

          vkolapan added a comment - Sorry, it is 15KB and not 15000 KB. Will check out the perforce plugin u had suggested. Thanks.

          vkolapan added a comment -

          The perforce plugin you had suggested did go past the point where it was crashing and its not been crashing with that specific error for any of the P4 describes. So its working right now. Thanks a ton rpetti.

          vkolapan added a comment - The perforce plugin you had suggested did go past the point where it was crashing and its not been crashing with that specific error for any of the P4 describes. So its working right now. Thanks a ton rpetti.

          Rob Petti added a comment -

          Good to hear. Kohsuke's fix has been committed to source, so 1.1.13 and beyond should work as well.

          Rob Petti added a comment - Good to hear. Kohsuke's fix has been committed to source, so 1.1.13 and beyond should work as well.

          vkolapan added a comment -

          when can I expect to see 1.1.13 on my updates page?

          vkolapan added a comment - when can I expect to see 1.1.13 on my updates page?

          Rob Petti added a comment -

          That's odd, I released it yesterday... I guess the release didn't work properly for some reason.

          Rob Petti added a comment - That's odd, I released it yesterday... I guess the release didn't work properly for some reason.

          Rob Petti added a comment -

          Resolving for now, feel free to reopen if it shows up again.

          Rob Petti added a comment - Resolving for now, feel free to reopen if it shows up again.

            rpetti Rob Petti
            vkolapan vkolapan
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: