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

Permanent building / consider removing latest changes

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Critical Critical
    • clearcase-plugin
    • None
    • Jenkins 1.480
      Plugin 1.3.9

      There seems to be a new feature (since 1.3.9) that re-builds a job whenever the config spec has changed. It's very troublesome; it's not always desired. User may want to prepare a config spec that he/she wants to be run later, not just instantly.

      Moreover, there's a bug in this functionality: when using automated time rules, current set CS is constantly different that the one configured. So the result is rebuilding constantly .

      After those 2 latest issues, I strongly recommend to remove the latest pull request at all https://github.com/jenkinsci/clearcase-plugin/pull/11 since it creates plenty of blocking issues. With these many breaking changes, I'm afraid that my project and I would need to stay with the 1.3.8 indefinitely.
      ===========================================

      This page captures the polling log that triggered this build.

      Started on Sep 17, 2012 2:39:01 PM

                                                          • get view CSPEC ***********************
                                                            [workspace] $ cleartool catcs -tag my_view
                                                            time 17-sep-12.11:53:51utc+0000
      1. Removed [...] config spec rules
        element * /main/LATEST
        end time
        ******************************************************************
        [WARNING] CSPEC configured != catcs (view)
        REASON: New config spec detected.
        Done. Took 58 ms
        Changes found

          [JENKINS-15202] Permanent building / consider removing latest changes

          Code changed in jenkins
          User: Vincent Latombe
          Path:
          src/main/java/hudson/plugins/clearcase/ClearCaseSCM.java
          http://jenkins-ci.org/commit/clearcase-plugin/7b6d9121570b8eb3860cee17801664b241a74302
          Log:
          JENKINS-15202 Do not trigger build if automatic time rule is used.

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Vincent Latombe Path: src/main/java/hudson/plugins/clearcase/ClearCaseSCM.java http://jenkins-ci.org/commit/clearcase-plugin/7b6d9121570b8eb3860cee17801664b241a74302 Log: JENKINS-15202 Do not trigger build if automatic time rule is used.

          Hello Waldek,

          while I understand this can be seen as frustrating, unfortunately the clearcase plugin has a lot (too many ?) of features/options (because people have a lot of different workflows using clearcase base/ucm), so making changes CAN break some previously working stuff. Hopefully as said before, the regressions that you observed hopefully can be fixed quite easily without breaking the new features.

          That said, this is open source software, I'm developping this on my (few) free time, so feedback on new releases like you did is always welcome, as long as it is done in a constructive way. I also welcome patches/pull requests, although these seem to be less frequent than complaints (how strange ).

          Vincent Latombe added a comment - Hello Waldek, while I understand this can be seen as frustrating, unfortunately the clearcase plugin has a lot (too many ?) of features/options (because people have a lot of different workflows using clearcase base/ucm), so making changes CAN break some previously working stuff. Hopefully as said before, the regressions that you observed hopefully can be fixed quite easily without breaking the new features. That said, this is open source software, I'm developping this on my (few) free time, so feedback on new releases like you did is always welcome, as long as it is done in a constructive way. I also welcome patches/pull requests, although these seem to be less frequent than complaints (how strange ).

          anb0s added a comment -

          Now it's clear to me: hasNewConfigSpec() is also called for dynamic views. We're using snapshot views only. For snapshot views there is no such feature in this plugin. I readed the ClearCase docs about "time rules" now and understand how it works. Generally time rules option can be used with snapshot views too.

          I'm software developer and user of ClearCase. I'm also working on this in my free time and share it with our dev team. I spended a lot of time to understand how this plugin is working. Yes the main reason for my work and pull request are needed features for our wokflow:

          • JENKINS-8305: using ClearCase plugin without config spec and load rules field (load them from files)
          • JENKINS-8949: Provide list of folders and/or files for polling (lshistory)
          • changeset can be generated from updt files after checkout in snapshot views

          My pull request introduced some fixes and new features. It was easier for me test all things together and push at once. In future i will try to make more commits, so it should easier to merge and test.

          Yes, feedback is always welcome to find the right way

          anb0s added a comment - Now it's clear to me: hasNewConfigSpec() is also called for dynamic views. We're using snapshot views only. For snapshot views there is no such feature in this plugin. I readed the ClearCase docs about "time rules" now and understand how it works. Generally time rules option can be used with snapshot views too. I'm software developer and user of ClearCase. I'm also working on this in my free time and share it with our dev team. I spended a lot of time to understand how this plugin is working. Yes the main reason for my work and pull request are needed features for our wokflow: JENKINS-8305 : using ClearCase plugin without config spec and load rules field (load them from files) JENKINS-8949 : Provide list of folders and/or files for polling (lshistory) changeset can be generated from updt files after checkout in snapshot views My pull request introduced some fixes and new features. It was easier for me test all things together and push at once. In future i will try to make more commits, so it should easier to merge and test. Yes, feedback is always welcome to find the right way

          Waldek M added a comment -

          Hi, Vincent
          I do understand that this is open source, and I do appreciate your work. Perhaps because the plugin has been so useful and robust, I got to expect it always to be perfect I'll try to be only constructive in the future. And, thanks!
          Waldek

          Waldek M added a comment - Hi, Vincent I do understand that this is open source, and I do appreciate your work. Perhaps because the plugin has been so useful and robust, I got to expect it always to be perfect I'll try to be only constructive in the future. And, thanks! Waldek

          I would like to add that I have similar issue. We are using snapshot views and from time to time I see rebuilds without reason. It says that CSPEC configured != catcs (view), but nobody actually changed cs. I'm not sure why jenkins thinks that something changed, but would it be possible to add a checkbox in plugin config to disable/enable this feature, and make it off by default?

          Mirek Gwiżdż added a comment - I would like to add that I have similar issue. We are using snapshot views and from time to time I see rebuilds without reason. It says that CSPEC configured != catcs (view), but nobody actually changed cs. I'm not sure why jenkins thinks that something changed, but would it be possible to add a checkbox in plugin config to disable/enable this feature, and make it off by default?

          Waldek M added a comment -

          Is there a chance for a fix for this one? This would be great, because without it, users of dynamic views (and some users of snapshots) are stuck with 1.3.8.

          Waldek M added a comment - Is there a chance for a fix for this one? This would be great, because without it, users of dynamic views (and some users of snapshots) are stuck with 1.3.8.

          I've just released 1.3.11 which disables the config spec comparison if time rule is enabled. This should fix your issues.

          Vincent Latombe added a comment - I've just released 1.3.11 which disables the config spec comparison if time rule is enabled. This should fix your issues.

          Waldek M added a comment -

          I've finally found some time to verify the fix. Well - it works Thanks!

          Waldek M added a comment - I've finally found some time to verify the fix. Well - it works Thanks!

          Gary Sterling added a comment -

          Is it possible this bug has been re-introduced in 1.3.14 (possibly earlier)? I am using a snapshot view, with a time-based config spec. The clearcase polling log is shown below:
          Started on Jun 20, 2013 1:30:25 PM

                                                              • get view CSPEC ***********************
                                                                [PSoC-Programmer-Build] $ cleartool catcs -tag Jenkins_build_CMSBUILD6.cms.cypress.com_PSoC-Programmer-Build
                                                                time 20-Jun-13.13:20:25
                                                                element * CHECKEDOUT
                                                                element * .../main_pp319/LATEST
                                                                element * PP3.18_B1534
                                                                element * /main/LATEST
                                                                load \ps1_swtools\Source
                                                                ******************************************************************
                                                                [WARNING] CSPEC configured != catcs (view)
                                                                REASON: New config spec detected.
                                                                Done. Took 0.47 sec
                                                                Changes found

          The build executes each time it is polled since the timestamp is different.

          Gary Sterling added a comment - Is it possible this bug has been re-introduced in 1.3.14 (possibly earlier)? I am using a snapshot view, with a time-based config spec. The clearcase polling log is shown below: Started on Jun 20, 2013 1:30:25 PM get view CSPEC *********************** [PSoC-Programmer-Build] $ cleartool catcs -tag Jenkins_build_CMSBUILD6.cms.cypress.com_PSoC-Programmer-Build time 20-Jun-13.13:20:25 element * CHECKEDOUT element * .../main_pp319/LATEST element * PP3.18_B1534 element * /main/LATEST load \ps1_swtools\Source ****************************************************************** [WARNING] CSPEC configured != catcs (view) REASON: New config spec detected. Done. Took 0.47 sec Changes found The build executes each time it is polled since the timestamp is different.

          dbubovych added a comment -

          The same problem with dynamic views. When "Do Not Reset Config Spec" option is set and "Config spec" field empty or default.

          ...
          [WARNING] CSPEC configured != catcs (view)
          REASON: New config spec detected.
          Done. Took 0.17 sec
          Changes found
          

          dbubovych added a comment - The same problem with dynamic views. When "Do Not Reset Config Spec" option is set and "Config spec" field empty or default. ... [WARNING] CSPEC configured != catcs (view) REASON: New config spec detected. Done. Took 0.17 sec Changes found

            vlatombe Vincent Latombe
            weakcamel Waldek M
            Votes:
            2 Vote for this issue
            Watchers:
            9 Start watching this issue

              Created:
              Updated:
              Resolved: