• Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Critical Critical
    • cvs-plugin

      As presented in the user group: https://groups.google.com/forum/?fromgroups#!topic/jenkinsci-users/Dvv0I3FBNW4

      We've been running Jenkins 1.451 and 1.454 on Windows XP against a CVS repository for a few weeks now, without any problems. The CVS plugin (v1.6) was using the local cvsnt install.

      We've since upgraded the CVS plugin to version 2.1 (by manually pinning the plugin) and since then, CVS changes are not detected. The CVS polling log is triggered properly, tons of "cvs rlog" instructions are sent, but at the end "No changes" is displayed.

      Using CVS plugin 1.6 the cvs polling command looked like this (executed at 5:26:21 PM EDT):
      cvs -q -z3 -n update -PdC -r d-chg00014229_op_brc_preimp-op-2012-02-27 -D "Thursday, March 22, 2012 9:26:21 PM UTC"

      Using CVS plugin 2.1, the last cvs checkout command looked like this (executed at 11:56:16 AM EDT):
      cvs checkout -P -r d-chg00014229_op_brc_preimp-op-2012-02-27 -D 23 Mar 2012 11:56:16 EDT -d portailInt portailInt

      We're in Montreal, so Eastern Time Zone with Daylight Saving Time in effect.

          [JENKINS-13227] CVS plugin 2.1 does not detect changes

          Guillaume Bilodeau created issue -

          Can you try again with the V2.2 of the CVS plugin? We've changed how we format timestamps for this version but, whilst your email thread raises the timestamp format as the potential cause of the failure, I'd expect CVS to throw an exception on failing to parse the timestamp and show a stacktrace in the polling log.

          If this doesn't fix it, could you confirm which version of CVS server you use and also send me a sample output of the following rlog command run from your command line (obscuring any sensitive output where needed)?

          if you're using a branch/tag: cvs rlog -d"22 Mar 2012 09:26:21 -0400<27 Mar 2012 12:00:00 -0400" -S -rlocationName moduleName (where locationName is your branch/tag name and moduleName is the name of the CVS module being polled)
          if you're using head: cvs rlog -d"22 Mar 2012 09:26:21 -0400<27 Mar 2012 12:00:00 -0400" -S moduleName (where moduleName is the name of the module being polled)

          Thanks

          Michael Clarke added a comment - Can you try again with the V2.2 of the CVS plugin? We've changed how we format timestamps for this version but, whilst your email thread raises the timestamp format as the potential cause of the failure, I'd expect CVS to throw an exception on failing to parse the timestamp and show a stacktrace in the polling log. If this doesn't fix it, could you confirm which version of CVS server you use and also send me a sample output of the following rlog command run from your command line (obscuring any sensitive output where needed)? if you're using a branch/tag: cvs rlog -d"22 Mar 2012 09:26:21 -0400<27 Mar 2012 12:00:00 -0400" -S -rlocationName moduleName (where locationName is your branch/tag name and moduleName is the name of the CVS module being polled) if you're using head: cvs rlog -d"22 Mar 2012 09:26:21 -0400<27 Mar 2012 12:00:00 -0400" -S moduleName (where moduleName is the name of the module being polled) Thanks

          Guillaume Bilodeau added a comment - - edited

          Thanks for taking a look at this. CVS server is 1.11.22. I've upgraded to CVS plugin 2.2 and the behaviour is the same. Here is the output of the command:

          ***
          D:\Projets\jdevws\portailInt>cvs rlog -d"22 Mar 2012 09:26:21 -0400<27 Mar 2012 12:00:00 -0400" -S -rd-chg00014229_op_brc_preimp-op-2012-02-27 portailInt
          cvs rlog: Logging portailInt
          ***

          I suppose this should have provided more information. Maybe there's an error in the command itself - sorry I'm not familiar enough with CVS to see any...

          Guillaume Bilodeau added a comment - - edited Thanks for taking a look at this. CVS server is 1.11.22. I've upgraded to CVS plugin 2.2 and the behaviour is the same. Here is the output of the command: *** D:\Projets\jdevws\portailInt>cvs rlog -d"22 Mar 2012 09:26:21 -0400<27 Mar 2012 12:00:00 -0400" -S -rd-chg00014229_op_brc_preimp-op-2012-02-27 portailInt cvs rlog: Logging portailInt *** I suppose this should have provided more information. Maybe there's an error in the command itself - sorry I'm not familiar enough with CVS to see any...

          Your output shows there as being no changes between 22nd and 27th March. Are you expecting there to be some?

          Michael Clarke added a comment - Your output shows there as being no changes between 22nd and 27th March. Are you expecting there to be some?

          Yes, many I sent the command with an even greater interval with the same results:

          D:\Projets\jdevws\portailInt>cvs rlog -d"01 Mar 2012 09:26:21 -0400<27 Mar 2012 12:00:00 -0400" -S -rd-chg00014229_op_brc_preimp-op-2012-02-27 portailInt
          cvs rlog: Logging portailInt

          Maybe the rlog command isn't interpreted properly by the server?

          Guillaume Bilodeau added a comment - Yes, many I sent the command with an even greater interval with the same results: D:\Projets\jdevws\portailInt>cvs rlog -d"01 Mar 2012 09:26:21 -0400<27 Mar 2012 12:00:00 -0400" -S -rd-chg00014229_op_brc_preimp-op-2012-02-27 portailInt cvs rlog: Logging portailInt Maybe the rlog command isn't interpreted properly by the server?

          Alex Lehmann added a comment -

          I wonder if if would be possible to set up a mock repository locally to test accessing it during a test case

          this would require running a cvs pserver locally though

          Alex Lehmann added a comment - I wonder if if would be possible to set up a mock repository locally to test accessing it during a test case this would require running a cvs pserver locally though

          Guillaume: I'm not aware of any CVS servers handling rlog differently from each other so am a bit surprised that you're expecting output for the command. Given your CVS client is giving the same output as our embedded CVS client does point to something strange happening on the server, although without having some way to replicate your setup/environment I'd really be guessing at what's going on. Can you try running the command 'cvs log -d"01 Mar 2012 09:00:00 -0400<27 Mar 2012 12:00:00 -0400" and let me know if you get output.

          Alex: the CVSClient has unit tests that create a mock CVS server by replaying a set of recorded messages, although this has problems in the way it's coded meaning the tests have to run as root on Linux and intermittently fail for no apparent reason.

          Michael Clarke added a comment - Guillaume: I'm not aware of any CVS servers handling rlog differently from each other so am a bit surprised that you're expecting output for the command. Given your CVS client is giving the same output as our embedded CVS client does point to something strange happening on the server, although without having some way to replicate your setup/environment I'd really be guessing at what's going on. Can you try running the command 'cvs log -d"01 Mar 2012 09:00:00 -0400<27 Mar 2012 12:00:00 -0400" and let me know if you get output. Alex: the CVSClient has unit tests that create a mock CVS server by replaying a set of recorded messages, although this has problems in the way it's coded meaning the tests have to run as root on Linux and intermittently fail for no apparent reason.

          Plenty of output with the cvs log command. Here is an excerpt:

          D:\Projets\jdevws\portailInt>cvs log -d"01 Mar 2012 09:00:00 -0400<27 Mar 2012 12:00:00 -0400"
          ? work/.project
          ? work/build
          ? work/script/build.txt
          cvs log: Logging .

          RCS file: /usr/local/cvs/repcvs/PortailInternetMouvement/portailInt/.cvsignore,v
          Working file: .cvsignore
          head: 1.1
          branch:
          locks: strict
          access list:
          symbolic names:
          d-chg00014229_op_impl_2012-03-25_v06: 1.1
          d-chg00014229_op_impl_2012-03-25_v05: 1.1
          aq_op_2012-03-25_v04: 1.1
          d-chg00014229_op_impl_2012-03-25_v04: 1.1
          aq_op_2012-03-25_v03: 1.1
          d-chg00014229_op_impl_2012-03-25_v03: 1.1
          d-chg00014229_op_impl_2012-03-25_v02: 1.1
          aq_op_2012-03-25_v01: 1.1
          d-chg00014229_op_impl_2012-03-25_v01: 1.1
          d-chg00014229_op_brc_preimp-op-2012-02-27: 1.1.0.2
          preimp_op_2012-02-27: 1.1
          keyword substitution: kv
          total revisions: 1; selected revisions: 0
          description:
          =============================================================================

          RCS file: /usr/local/cvs/repcvs/PortailInternetMouvement/portailInt/Attic/PortailInt.jws,v
          Working file: PortailInt.jws
          head: 1.1
          branch:
          locks: strict
          access list:
          symbolic names:
          d-chg00014229_op_impl_2012-03-25_v06: 1.1.2.1
          d-chg00014229_op_impl_2012-03-25_v05: 1.1.2.1
          aq_op_2012-03-25_v04: 1.1.2.1
          d-chg00014229_op_impl_2012-03-25_v04: 1.1.2.1
          aq_op_2012-03-25_v03: 1.1.2.1
          d-chg00014229_op_impl_2012-03-25_v03: 1.1.2.1
          d-chg00014229_op_impl_2012-03-25_v02: 1.1.2.1
          aq_op_2012-03-25_v01: 1.1.2.1
          d-chg00014229_op_impl_2012-03-25_v01: 1.1.2.1
          d-chg00014229_op_brc_preimp-op-2012-02-27: 1.1.0.2
          keyword substitution: kv
          total revisions: 2; selected revisions: 0
          description:
          =============================================================================

          RCS file: /usr/local/cvs/repcvs/PortailInternetMouvement/portailInt/PortailInternet.jws,v
          Working file: PortailInternet.jws
          head: 1.9
          branch:
          locks: strict
          access list:
          symbolic names:
          d-chg00014229_op_brc_preimp-op-2012-02-27: 1.9.0.2
          preimp_op_2012-02-27: 1.9
          d-800b02_hl_tmp_2012-01-16: 1.6
          d-800b02_hl_tmp_2012-01-09: 1.3
          keyword substitution: kv
          total revisions: 10; selected revisions: 0
          description:

          Guillaume Bilodeau added a comment - Plenty of output with the cvs log command. Here is an excerpt: D:\Projets\jdevws\portailInt>cvs log -d"01 Mar 2012 09:00:00 -0400<27 Mar 2012 12:00:00 -0400" ? work/.project ? work/build ? work/script/build.txt cvs log: Logging . RCS file: /usr/local/cvs/repcvs/PortailInternetMouvement/portailInt/.cvsignore,v Working file: .cvsignore head: 1.1 branch: locks: strict access list: symbolic names: d-chg00014229_op_impl_2012-03-25_v06: 1.1 d-chg00014229_op_impl_2012-03-25_v05: 1.1 aq_op_2012-03-25_v04: 1.1 d-chg00014229_op_impl_2012-03-25_v04: 1.1 aq_op_2012-03-25_v03: 1.1 d-chg00014229_op_impl_2012-03-25_v03: 1.1 d-chg00014229_op_impl_2012-03-25_v02: 1.1 aq_op_2012-03-25_v01: 1.1 d-chg00014229_op_impl_2012-03-25_v01: 1.1 d-chg00014229_op_brc_preimp-op-2012-02-27: 1.1.0.2 preimp_op_2012-02-27: 1.1 keyword substitution: kv total revisions: 1; selected revisions: 0 description: ============================================================================= RCS file: /usr/local/cvs/repcvs/PortailInternetMouvement/portailInt/Attic/PortailInt.jws,v Working file: PortailInt.jws head: 1.1 branch: locks: strict access list: symbolic names: d-chg00014229_op_impl_2012-03-25_v06: 1.1.2.1 d-chg00014229_op_impl_2012-03-25_v05: 1.1.2.1 aq_op_2012-03-25_v04: 1.1.2.1 d-chg00014229_op_impl_2012-03-25_v04: 1.1.2.1 aq_op_2012-03-25_v03: 1.1.2.1 d-chg00014229_op_impl_2012-03-25_v03: 1.1.2.1 d-chg00014229_op_impl_2012-03-25_v02: 1.1.2.1 aq_op_2012-03-25_v01: 1.1.2.1 d-chg00014229_op_impl_2012-03-25_v01: 1.1.2.1 d-chg00014229_op_brc_preimp-op-2012-02-27: 1.1.0.2 keyword substitution: kv total revisions: 2; selected revisions: 0 description: ============================================================================= RCS file: /usr/local/cvs/repcvs/PortailInternetMouvement/portailInt/PortailInternet.jws,v Working file: PortailInternet.jws head: 1.9 branch: locks: strict access list: symbolic names: d-chg00014229_op_brc_preimp-op-2012-02-27: 1.9.0.2 preimp_op_2012-02-27: 1.9 d-800b02_hl_tmp_2012-01-16: 1.6 d-800b02_hl_tmp_2012-01-09: 1.3 keyword substitution: kv total revisions: 10; selected revisions: 0 description:

          Interestingly the files you've listed don't have any revisions in the time range you've specified. Could you search your output and check if any have "selected revision" that isn't 0?

          Michael Clarke added a comment - Interestingly the files you've listed don't have any revisions in the time range you've specified. Could you search your output and check if any have "selected revision" that isn't 0?

          Guillaume Bilodeau added a comment - - edited

          Right.

          RCS file: /usr/local/cvs/repcvs/PortailInternetMouvement/portailInt/Portail/src/com/xxx/pvm/portail/taglib/I18nBundleTag.java,v
          Working file: Portail/src/com/xxx/pvm/portail/taglib/I18nBundleTag.java
          head: 1.3
          branch:
          locks: strict
          access list:
          symbolic names:
          d-chg00014229_op_impl_2012-03-25_v06: 1.1.2.4
          d-chg00014229_op_impl_2012-03-25_v05: 1.1.2.4
          aq_op_2012-03-25_v04: 1.1.2.4
          d-chg00014229_op_impl_2012-03-25_v04: 1.1.2.4
          aq_op_2012-03-25_v03: 1.1.2.3
          d-chg00014229_op_impl_2012-03-25_v03: 1.1.2.3
          d-chg00014229_op_impl_2012-03-25_v02: 1.1.2.3
          aq_op_2012-03-25_v01: 1.1
          d-chg00014229_op_impl_2012-03-25_v01: 1.1
          d-chg00014229_op_brc_preimp-op-2012-02-27: 1.1.0.2
          preimp_op_2012-02-27: 1.1
          keyword substitution: kv
          total revisions: 8; selected revisions: 3
          description:
          ----------------------------
          revision 1.1.2.5
          date: 2012/03/23 15:42:50; author: ba0chzi; state: Exp; lines: +4 -26
          Organize imports
          ----------------------------
          revision 1.1.2.4
          date: 2012/03/13 14:18:27; author: ba0chmn; state: Exp; lines: +1 -1
          Changement de scope de request ou session pour application dans le but d'améliorer les performances
          ----------------------------
          revision 1.1.2.3
          date: 2012/03/06 21:19:03; author: ba0chmn; state: Exp; lines: +14 -8
          Utilisation des services de récupération de fichier dans UCM de xxx

          Guillaume Bilodeau added a comment - - edited Right. RCS file: /usr/local/cvs/repcvs/PortailInternetMouvement/portailInt/Portail/src/com/xxx/pvm/portail/taglib/I18nBundleTag.java,v Working file: Portail/src/com/xxx/pvm/portail/taglib/I18nBundleTag.java head: 1.3 branch: locks: strict access list: symbolic names: d-chg00014229_op_impl_2012-03-25_v06: 1.1.2.4 d-chg00014229_op_impl_2012-03-25_v05: 1.1.2.4 aq_op_2012-03-25_v04: 1.1.2.4 d-chg00014229_op_impl_2012-03-25_v04: 1.1.2.4 aq_op_2012-03-25_v03: 1.1.2.3 d-chg00014229_op_impl_2012-03-25_v03: 1.1.2.3 d-chg00014229_op_impl_2012-03-25_v02: 1.1.2.3 aq_op_2012-03-25_v01: 1.1 d-chg00014229_op_impl_2012-03-25_v01: 1.1 d-chg00014229_op_brc_preimp-op-2012-02-27: 1.1.0.2 preimp_op_2012-02-27: 1.1 keyword substitution: kv total revisions: 8; selected revisions: 3 description: ---------------------------- revision 1.1.2.5 date: 2012/03/23 15:42:50; author: ba0chzi; state: Exp; lines: +4 -26 Organize imports ---------------------------- revision 1.1.2.4 date: 2012/03/13 14:18:27; author: ba0chmn; state: Exp; lines: +1 -1 Changement de scope de request ou session pour application dans le but d'améliorer les performances ---------------------------- revision 1.1.2.3 date: 2012/03/06 21:19:03; author: ba0chmn; state: Exp; lines: +14 -8 Utilisation des services de récupération de fichier dans UCM de xxx

            mc1arke Michael Clarke
            gbilodeau Guillaume Bilodeau
            Votes:
            7 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: