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

p4-plugin 1.3.9 triggers build when there is no new changelists, and syncs to oldest changelist in the workspace


          • Update: This issue occurs on plugin version 1.4.0, as well.

      Issue begins immediately after upgrading p4-plugin to 1.3.9, and goes away as soon as I downgrade to 1.3.8 (I tried it multiple times). I verified that the workspace was at the latest revision, and cstat reported status "have" for all changelists, before upgrading the plugin.

      I have several jobs that poll Perforce for changes; all are affected. Polling triggers a build when there are no new changes. When the build syncs the workspace, it syncs not to the latest changelist, but to what I think is the oldest changelist containing files from the workspace.

      I think this is because it is not correctly parsing the status field returned from cstat, when it polls. Polling log is attached. It says "found change" on changelists that cstat reported were status "have" (I ran it independently of Jenkins) immediately prior to upgrading the plugin.

      Here is part of the build console output that demonstrates the issue; the raw text is attached. The latest changelist is 605049, but it syncs to changelist 530996

      p4 changes -m1 -ssubmitted //FmsDbPatches_P4Poll/...

      Change 605049 on 2016/05/18 by jwb@jwb-netmenu 'MDIA - Edit Service Menus: Menu'
      P4 Task: syncing files at change: 530996
      p4 sync D:\Workspaces\FmsDbPatches_P4Poll/...@530996

      D:\Workspaces\FmsDbPatches_P4Poll/...@530996 - file(s) up-to-date.
      ... p4 changes -m100 //FmsDbPatches_P4Poll/...@605008,530996

            Unassigned Unassigned
            langtonben Ben Langton
            2 Vote for this issue
            4 Start watching this issue