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

Performance issue when querying changelog information

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: Major Major
    • p4-plugin
    • Jenkins ver. 1.625.1
      P4 plugin 1.3.2
      OS: RHEL 6.4
      Java: 1.8.0_60

      We have recently switched from the perforce-plugin to p4-plugin but are seeing a performance issue on our perforce server. The p4-plugin seems to be querying more changes from the perforce server than necessary.
      For example I see it doing:

      p4 changes -m100 //myclientname/...@0,2126849

      which returns 100 changelists and p4-plugin then proceeds to do "p4 change -o <change> , p4 user -o <user> and p4 describe -s <change> for every one of those 100 changes.

      But the previous build in jenkins for that job was changelist 2125434 so if p4-plugin had done the following query:

      p4 changes -m100 //myclientname/...@2125434,2126849

      it would have only returned one change (as many changes were outside the view of this client workspace) and then the load on the main perforce server would be much reduced.

      Why isn't p4-plugin using the changelist number of the previous build to reduce the amount of queries?

          [JENKINS-31083] Performance issue when querying changelog information

          Andrew Barnish created issue -
          Andrew Barnish made changes -
          Description Original:
          We have recently switched from the perforce-plugin to p4-plugin but are seeing a perforce issue on our perforce server. The p4-plugin seems to be querying more changes from the perforce server that necessary.
          For example I see it doing:

            p4 changes -m100 //myclientname/...@0,2126849

          which returns 100 changelists and p4-plugin then proceeds to do "p4 change -o <change> , p4 user -o <user> and p4 describe -s <change> for every one of those 100 changes.

          But the previous build in jenkins for that job was changelist 2125434 so if p4-plugin had done the following query:

             p4 changes -m100 //myclientname/...@2125434,2126849

          it would have only returned one change (as many changes were outside the view of this client workspace) and then the load on the main perforce server would be much reduced.

          Why isn't p4-plugin using the changelist number of the previous build to reduce the amount of queries?

          New: We have recently switched from the perforce-plugin to p4-plugin but are seeing a perforce issue on our perforce server. The p4-plugin seems to be querying more changes from the perforce server than necessary.
          For example I see it doing:

            p4 changes -m100 //myclientname/...@0,2126849

          which returns 100 changelists and p4-plugin then proceeds to do "p4 change -o <change> , p4 user -o <user> and p4 describe -s <change> for every one of those 100 changes.

          But the previous build in jenkins for that job was changelist 2125434 so if p4-plugin had done the following query:

             p4 changes -m100 //myclientname/...@2125434,2126849

          it would have only returned one change (as many changes were outside the view of this client workspace) and then the load on the main perforce server would be much reduced.

          Why isn't p4-plugin using the changelist number of the previous build to reduce the amount of queries?

          Andrew Barnish made changes -
          Description Original: We have recently switched from the perforce-plugin to p4-plugin but are seeing a perforce issue on our perforce server. The p4-plugin seems to be querying more changes from the perforce server than necessary.
          For example I see it doing:

            p4 changes -m100 //myclientname/...@0,2126849

          which returns 100 changelists and p4-plugin then proceeds to do "p4 change -o <change> , p4 user -o <user> and p4 describe -s <change> for every one of those 100 changes.

          But the previous build in jenkins for that job was changelist 2125434 so if p4-plugin had done the following query:

             p4 changes -m100 //myclientname/...@2125434,2126849

          it would have only returned one change (as many changes were outside the view of this client workspace) and then the load on the main perforce server would be much reduced.

          Why isn't p4-plugin using the changelist number of the previous build to reduce the amount of queries?

          New: We have recently switched from the perforce-plugin to p4-plugin but are seeing a performance issue on our perforce server. The p4-plugin seems to be querying more changes from the perforce server than necessary.
          For example I see it doing:

            p4 changes -m100 //myclientname/...@0,2126849

          which returns 100 changelists and p4-plugin then proceeds to do "p4 change -o <change> , p4 user -o <user> and p4 describe -s <change> for every one of those 100 changes.

          But the previous build in jenkins for that job was changelist 2125434 so if p4-plugin had done the following query:

             p4 changes -m100 //myclientname/...@2125434,2126849

          it would have only returned one change (as many changes were outside the view of this client workspace) and then the load on the main perforce server would be much reduced.

          Why isn't p4-plugin using the changelist number of the previous build to reduce the amount of queries?

          R. Tyler Croy made changes -
          Workflow Original: JNJira [ 166252 ] New: JNJira + In-Review [ 182329 ]
          Andrew Barnish made changes -
          Resolution New: Cannot Reproduce [ 5 ]
          Status Original: Open [ 1 ] New: Closed [ 6 ]

            p4paul Paul Allen
            barnish Andrew Barnish
            Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: