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

Occasional thread lockup during p4 sync

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Blocker
    • Resolution: Fixed
    • Component/s: p4-plugin
    • Labels:
    • Environment:
      Jenkins ver. 1.625.1
      P4 plugin 1.3.2
      OS: RHEL 6.4
      Java: 1.8.0_60
    • Similar Issues:

      Description

      We are experiencing occasional lockups in "p4 sync" with the p4-plugin which we did not see with the legacy perforce-plugin.
      It does not seem possible to interrupt these lockups which means the entire server process has to be restarted.

      I have attached the threadDump for the thread in question.

      The last output from the job was:

      P4 Task: syncing files at change: 2131788
      p4 sync -q <workspace_dir>/...@2131788

      ... totalFileSize 879498020
      ... totalFileCount 100

      There should be a timeout or something similar implemented in p4-plugin which should prevent such problems locking up the executor in jenkins.
      Actually I saw the opposite in ConnectionFactory.java:

      // disable timeout for slow servers / large db lock times
      props.put(RpcPropertyDefs.RPC_SOCKET_SO_TIMEOUT_NICK, "0");

      Could that be changed to a user defined setting in the jenkins global configuration like the legacy perforce-plugin uses?

        Attachments

          Activity

          Hide
          scm_issue_link SCM/JIRA link daemon added a comment -

          Code changed in jenkins
          User: Paul Allen
          Path:
          src/main/java/org/jenkinsci/plugins/p4/client/ConnectionConfig.java
          src/main/java/org/jenkinsci/plugins/p4/client/ConnectionFactory.java
          src/main/java/org/jenkinsci/plugins/p4/credentials/P4BaseCredentials.java
          src/main/java/org/jenkinsci/plugins/p4/credentials/P4PasswordImpl.java
          src/main/java/org/jenkinsci/plugins/p4/credentials/P4TicketImpl.java
          src/main/resources/org/jenkinsci/plugins/p4/credentials/P4PasswordImpl/config.jelly
          src/main/resources/org/jenkinsci/plugins/p4/credentials/P4PasswordImpl/help-timeout.html
          src/main/resources/org/jenkinsci/plugins/p4/credentials/P4TicketImpl/config.jelly
          src/main/resources/org/jenkinsci/plugins/p4/credentials/P4TicketImpl/help-timeout.html
          src/test/java/org/jenkinsci/plugins/p4/P4Server.java
          src/test/java/org/jenkinsci/plugins/p4/client/ConnectionTest.java
          src/test/java/org/jenkinsci/plugins/p4/credentials/PerforceCredentialsTest.java
          src/test/java/org/jenkinsci/plugins/p4/review/ReviewImplTest.java
          http://jenkins-ci.org/commit/p4-plugin/e80c3eaeabfe80d38d54f025c9d5179bb7353b7d
          Log:
          Advanced Credentials option for RPC_SOCKET_SO_TIMEOUT_NICK

          JENKINS-31196

          Show
          scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Paul Allen Path: src/main/java/org/jenkinsci/plugins/p4/client/ConnectionConfig.java src/main/java/org/jenkinsci/plugins/p4/client/ConnectionFactory.java src/main/java/org/jenkinsci/plugins/p4/credentials/P4BaseCredentials.java src/main/java/org/jenkinsci/plugins/p4/credentials/P4PasswordImpl.java src/main/java/org/jenkinsci/plugins/p4/credentials/P4TicketImpl.java src/main/resources/org/jenkinsci/plugins/p4/credentials/P4PasswordImpl/config.jelly src/main/resources/org/jenkinsci/plugins/p4/credentials/P4PasswordImpl/help-timeout.html src/main/resources/org/jenkinsci/plugins/p4/credentials/P4TicketImpl/config.jelly src/main/resources/org/jenkinsci/plugins/p4/credentials/P4TicketImpl/help-timeout.html src/test/java/org/jenkinsci/plugins/p4/P4Server.java src/test/java/org/jenkinsci/plugins/p4/client/ConnectionTest.java src/test/java/org/jenkinsci/plugins/p4/credentials/PerforceCredentialsTest.java src/test/java/org/jenkinsci/plugins/p4/review/ReviewImplTest.java http://jenkins-ci.org/commit/p4-plugin/e80c3eaeabfe80d38d54f025c9d5179bb7353b7d Log: Advanced Credentials option for RPC_SOCKET_SO_TIMEOUT_NICK JENKINS-31196
          Hide
          p4paul Paul Allen added a comment -

          Added timeout to Credentials under Advanced Option 1.3.3.
          Please reopen if the fix does not resolve the issue.

          Show
          p4paul Paul Allen added a comment - Added timeout to Credentials under Advanced Option 1.3.3. Please reopen if the fix does not resolve the issue.
          Hide
          barnish Andrew Barnish added a comment -

          This seems to have resolved the issue - thanks!

          Show
          barnish Andrew Barnish added a comment - This seems to have resolved the issue - thanks!

            People

            • Assignee:
              p4paul Paul Allen
              Reporter:
              barnish Andrew Barnish
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: