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

actions from TransientActionFactories are saved in Builds.

    XMLWordPrintable

Details

    Description

      Actions created from a TransientActionFactory are persisted in a Run when they should never be persisted.

       

      If you have a TAF that creates an action for any ModelItem then on {{FreeStyleBuild}}s you will end up with 3 duplicate Actions displayed (and 2 will be persisted in the build.xml)

       

      One is created for the hudson.model.Queue$WaitingItem one for the hudson.model.Queue$BuildableItem and the last one for the actual build (which is the one that is not persisted).

       

      build.xml
      <?xml version='1.1' encoding='UTF-8'?>
      <build>
          <actions>
              <hudson.model.CauseAction>
                  <causeBag class="linked-hash-map">
                      <entry>
                          <hudson.model.Cause_-UserIdCause>
                              <userId>james</userId>
                          </hudson.model.Cause_-UserIdCause>
                          <int>1</int>
                      </entry>
                  </causeBag>
              </hudson.model.CauseAction>
              <com.myco.myplugin.MyAction>
                  <target>hudson.model.Queue$WaitingItem:hudson.model.FreeStyleProject@11e31cdf[free]:5</target>
              </com.myco.myplugin.MyAction>
              <com.myco.myplugin.MyAction>
                  <target>hudson.model.Queue$BuildableItem:hudson.model.FreeStyleProject@11e31cdf[free]:5</target>
              </com.myco.myplugin.MyAction>
              <jenkins.metrics.impl.TimeInQueueAction>
                  <queuingDurationMillis>9</queuingDurationMillis>
              </jenkins.metrics.impl.TimeInQueueAction>
          </actions>
          <queueId>5</queueId>
          <timestamp>1527599156095</timestamp>
          <startTime>1527599156104</startTime>
          <result>SUCCESS</result>
          <duration>3225</duration>
          <charset>windows-1252</charset>
          <keepLog>false</keepLog>
          <builtOn></builtOn>
          <workspace>C:\workarea\yplugin\work\workspace\free</workspace>
          <hudsonVersion>2.107.3</hudsonVersion>
          <scm class="hudson.scm.NullChangeLogParser"/>
          <culprits class="com.google.common.collect.EmptyImmutableSortedSet"/>
      </build>
      

       

      Attachments

        Issue Links

          Activity

            teilo James Nord created issue -
            teilo James Nord made changes -
            Field Original Value New Value
            Description {{Actions}} created from a {{TransientActionFactory}} are persisted in a {{Run}} when they should never be persisted.

             

            If you have a {{TAF}} that creates an action for any {{ModelItem}} then on {{FreeStyleBuild}}s you will end up with 3 duplicate Actions displayed (and 2 will be persisted in the build.xml)

             

            One is created for the {{hudson.model.Queue$WaitingItem}} one for the {{hudson.model.Queue$BuildableItem}} and the last one for the actual build (which is the one that is not persisted).

             
            {code:java}
            <?xml version='1.1' encoding='UTF-8'?>
            <build>
            <actions>
            <hudson.model.CauseAction>
            <causeBag class="linked-hash-map">
            <entry>
            <hudson.model.Cause_-UserIdCause>
            <userId>james</userId>
            </hudson.model.Cause_-UserIdCause>
            <int>1</int>
            </entry>
            </causeBag>
            </hudson.model.CauseAction>
            <com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction plugin="bluesteel-cjoc@1.2.7-SNAPSHOT">
            <target>hudson.model.Queue$WaitingItem:hudson.model.FreeStyleProject@11e31cdf[free]:5</target>
            </com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction>
            <com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction plugin="bluesteel-cjoc@1.2.7-SNAPSHOT">
            <target>hudson.model.Queue$BuildableItem:hudson.model.FreeStyleProject@11e31cdf[free]:5</target>
            </com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction>
            <jenkins.metrics.impl.TimeInQueueAction plugin="metrics@3.1.2.12">
            <queuingDurationMillis>9</queuingDurationMillis>
            </jenkins.metrics.impl.TimeInQueueAction>
            </actions>
            <queueId>5</queueId>
            <timestamp>1527599156095</timestamp>
            <startTime>1527599156104</startTime>
            <result>SUCCESS</result>
            <duration>3225</duration>
            <charset>windows-1252</charset>
            <keepLog>false</keepLog>
            <builtOn></builtOn>
            <workspace>C:\workarea\source\github\cloudbees\bluesteel\bluesteel-cjoc\work\workspace\free</workspace>
            <hudsonVersion>2.107.3-cb-1</hudsonVersion>
            <scm class="hudson.scm.NullChangeLogParser"/>
            <culprits class="com.google.common.collect.EmptyImmutableSortedSet"/>
            </build>
            {code}
             
            {{Actions}} created from a {{TransientActionFactory}} are persisted in a {{Run}} when they should never be persisted.

             

            If you have a {{TAF}} that creates an action for any {{ModelItem}} then on {{FreeStyleBuild}}s you will end up with 3 duplicate Actions displayed (and 2 will be persisted in the build.xml)

             

            One is created for the {{hudson.model.Queue$WaitingItem}} one for the {{hudson.model.Queue$BuildableItem}} and the last one for the actual build (which is the one that is not persisted).

             
            {code:title=build.xml|xml}
            <?xml version='1.1' encoding='UTF-8'?>
            <build>
            <actions>
            <hudson.model.CauseAction>
            <causeBag class="linked-hash-map">
            <entry>
            <hudson.model.Cause_-UserIdCause>
            <userId>james</userId>
            </hudson.model.Cause_-UserIdCause>
            <int>1</int>
            </entry>
            </causeBag>
            </hudson.model.CauseAction>
            <com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction plugin="bluesteel-cjoc@1.2.7-SNAPSHOT">
            <target>hudson.model.Queue$WaitingItem:hudson.model.FreeStyleProject@11e31cdf[free]:5</target>
            </com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction>
            <com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction plugin="bluesteel-cjoc@1.2.7-SNAPSHOT">
            <target>hudson.model.Queue$BuildableItem:hudson.model.FreeStyleProject@11e31cdf[free]:5</target>
            </com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction>
            <jenkins.metrics.impl.TimeInQueueAction plugin="metrics@3.1.2.12">
            <queuingDurationMillis>9</queuingDurationMillis>
            </jenkins.metrics.impl.TimeInQueueAction>
            </actions>
            <queueId>5</queueId>
            <timestamp>1527599156095</timestamp>
            <startTime>1527599156104</startTime>
            <result>SUCCESS</result>
            <duration>3225</duration>
            <charset>windows-1252</charset>
            <keepLog>false</keepLog>
            <builtOn></builtOn>
            <workspace>C:\workarea\source\github\cloudbees\bluesteel\bluesteel-cjoc\work\workspace\free</workspace>
            <hudsonVersion>2.107.3-cb-1</hudsonVersion>
            <scm class="hudson.scm.NullChangeLogParser"/>
            <culprits class="com.google.common.collect.EmptyImmutableSortedSet"/>
            </build>
            {code}
             
            teilo James Nord made changes -
            Description {{Actions}} created from a {{TransientActionFactory}} are persisted in a {{Run}} when they should never be persisted.

             

            If you have a {{TAF}} that creates an action for any {{ModelItem}} then on {{FreeStyleBuild}}s you will end up with 3 duplicate Actions displayed (and 2 will be persisted in the build.xml)

             

            One is created for the {{hudson.model.Queue$WaitingItem}} one for the {{hudson.model.Queue$BuildableItem}} and the last one for the actual build (which is the one that is not persisted).

             
            {code:title=build.xml|xml}
            <?xml version='1.1' encoding='UTF-8'?>
            <build>
            <actions>
            <hudson.model.CauseAction>
            <causeBag class="linked-hash-map">
            <entry>
            <hudson.model.Cause_-UserIdCause>
            <userId>james</userId>
            </hudson.model.Cause_-UserIdCause>
            <int>1</int>
            </entry>
            </causeBag>
            </hudson.model.CauseAction>
            <com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction plugin="bluesteel-cjoc@1.2.7-SNAPSHOT">
            <target>hudson.model.Queue$WaitingItem:hudson.model.FreeStyleProject@11e31cdf[free]:5</target>
            </com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction>
            <com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction plugin="bluesteel-cjoc@1.2.7-SNAPSHOT">
            <target>hudson.model.Queue$BuildableItem:hudson.model.FreeStyleProject@11e31cdf[free]:5</target>
            </com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction>
            <jenkins.metrics.impl.TimeInQueueAction plugin="metrics@3.1.2.12">
            <queuingDurationMillis>9</queuingDurationMillis>
            </jenkins.metrics.impl.TimeInQueueAction>
            </actions>
            <queueId>5</queueId>
            <timestamp>1527599156095</timestamp>
            <startTime>1527599156104</startTime>
            <result>SUCCESS</result>
            <duration>3225</duration>
            <charset>windows-1252</charset>
            <keepLog>false</keepLog>
            <builtOn></builtOn>
            <workspace>C:\workarea\source\github\cloudbees\bluesteel\bluesteel-cjoc\work\workspace\free</workspace>
            <hudsonVersion>2.107.3-cb-1</hudsonVersion>
            <scm class="hudson.scm.NullChangeLogParser"/>
            <culprits class="com.google.common.collect.EmptyImmutableSortedSet"/>
            </build>
            {code}
             
            {{Actions}} created from a {{TransientActionFactory}} are persisted in a {{Run}} when they should never be persisted.

             

            If you have a {{TAF}} that creates an action for any {{ModelItem}} then on {{FreeStyleBuild}}s you will end up with 3 duplicate Actions displayed (and 2 will be persisted in the build.xml)

             

            One is created for the {{hudson.model.Queue$WaitingItem}} one for the {{hudson.model.Queue$BuildableItem}} and the last one for the actual build (which is the one that is not persisted).

             
            {code:title=build.xml|xml}
            <?xml version='1.1' encoding='UTF-8'?>
            <build>
                <actions>
                    <hudson.model.CauseAction>
                        <causeBag class="linked-hash-map">
                            <entry>
                                <hudson.model.Cause_-UserIdCause>
                                    <userId>james</userId>
                                </hudson.model.Cause_-UserIdCause>
                                <int>1</int>
                            </entry>
                        </causeBag>
                    </hudson.model.CauseAction>
                    <com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction plugin="bluesteel-cjoc@1.2.7-SNAPSHOT">
                        <target>hudson.model.Queue$WaitingItem:hudson.model.FreeStyleProject@11e31cdf[free]:5</target>
                    </com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction>
                    <com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction plugin="bluesteel-cjoc@1.2.7-SNAPSHOT">
                        <target>hudson.model.Queue$BuildableItem:hudson.model.FreeStyleProject@11e31cdf[free]:5</target>
                    </com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction>
                    <jenkins.metrics.impl.TimeInQueueAction plugin="metrics@3.1.2.12">
                        <queuingDurationMillis>9</queuingDurationMillis>
                    </jenkins.metrics.impl.TimeInQueueAction>
                </actions>
                <queueId>5</queueId>
                <timestamp>1527599156095</timestamp>
                <startTime>1527599156104</startTime>
                <result>SUCCESS</result>
                <duration>3225</duration>
                <charset>windows-1252</charset>
                <keepLog>false</keepLog>
                <builtOn></builtOn>
                <workspace>C:\workarea\source\github\cloudbees\bluesteel\bluesteel-cjoc\work\workspace\free</workspace>
                <hudsonVersion>2.107.3-cb-1</hudsonVersion>
                <scm class="hudson.scm.NullChangeLogParser"/>
                <culprits class="com.google.common.collect.EmptyImmutableSortedSet"/>
            </build>
            {code}
             
            teilo James Nord made changes -
            Description {{Actions}} created from a {{TransientActionFactory}} are persisted in a {{Run}} when they should never be persisted.

             

            If you have a {{TAF}} that creates an action for any {{ModelItem}} then on {{FreeStyleBuild}}s you will end up with 3 duplicate Actions displayed (and 2 will be persisted in the build.xml)

             

            One is created for the {{hudson.model.Queue$WaitingItem}} one for the {{hudson.model.Queue$BuildableItem}} and the last one for the actual build (which is the one that is not persisted).

             
            {code:title=build.xml|xml}
            <?xml version='1.1' encoding='UTF-8'?>
            <build>
                <actions>
                    <hudson.model.CauseAction>
                        <causeBag class="linked-hash-map">
                            <entry>
                                <hudson.model.Cause_-UserIdCause>
                                    <userId>james</userId>
                                </hudson.model.Cause_-UserIdCause>
                                <int>1</int>
                            </entry>
                        </causeBag>
                    </hudson.model.CauseAction>
                    <com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction plugin="bluesteel-cjoc@1.2.7-SNAPSHOT">
                        <target>hudson.model.Queue$WaitingItem:hudson.model.FreeStyleProject@11e31cdf[free]:5</target>
                    </com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction>
                    <com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction plugin="bluesteel-cjoc@1.2.7-SNAPSHOT">
                        <target>hudson.model.Queue$BuildableItem:hudson.model.FreeStyleProject@11e31cdf[free]:5</target>
                    </com.cloudbees.opscenter.server.bluesteel.action.BlueSteelUrlAction>
                    <jenkins.metrics.impl.TimeInQueueAction plugin="metrics@3.1.2.12">
                        <queuingDurationMillis>9</queuingDurationMillis>
                    </jenkins.metrics.impl.TimeInQueueAction>
                </actions>
                <queueId>5</queueId>
                <timestamp>1527599156095</timestamp>
                <startTime>1527599156104</startTime>
                <result>SUCCESS</result>
                <duration>3225</duration>
                <charset>windows-1252</charset>
                <keepLog>false</keepLog>
                <builtOn></builtOn>
                <workspace>C:\workarea\source\github\cloudbees\bluesteel\bluesteel-cjoc\work\workspace\free</workspace>
                <hudsonVersion>2.107.3-cb-1</hudsonVersion>
                <scm class="hudson.scm.NullChangeLogParser"/>
                <culprits class="com.google.common.collect.EmptyImmutableSortedSet"/>
            </build>
            {code}
             
            {{Actions}} created from a {{TransientActionFactory}} are persisted in a {{Run}} when they should never be persisted.

             

            If you have a {{TAF}} that creates an action for any {{ModelItem}} then on {{FreeStyleBuild}}s you will end up with 3 duplicate Actions displayed (and 2 will be persisted in the build.xml)

             

            One is created for the {{hudson.model.Queue$WaitingItem}} one for the {{hudson.model.Queue$BuildableItem}} and the last one for the actual build (which is the one that is not persisted).

             
            {code:title=build.xml|xml}
            <?xml version='1.1' encoding='UTF-8'?>
            <build>
                <actions>
                    <hudson.model.CauseAction>
                        <causeBag class="linked-hash-map">
                            <entry>
                                <hudson.model.Cause_-UserIdCause>
                                    <userId>james</userId>
                                </hudson.model.Cause_-UserIdCause>
                                <int>1</int>
                            </entry>
                        </causeBag>
                    </hudson.model.CauseAction>
                    <com.myco.myplugin.MyAction>
                        <target>hudson.model.Queue$WaitingItem:hudson.model.FreeStyleProject@11e31cdf[free]:5</target>
                    </com.myco.myplugin.MyAction>
                    <com.myco.myplugin.MyAction>
                        <target>hudson.model.Queue$BuildableItem:hudson.model.FreeStyleProject@11e31cdf[free]:5</target>
                    </com.myco.myplugin.MyAction>
                    <jenkins.metrics.impl.TimeInQueueAction>
                        <queuingDurationMillis>9</queuingDurationMillis>
                    </jenkins.metrics.impl.TimeInQueueAction>
                </actions>
                <queueId>5</queueId>
                <timestamp>1527599156095</timestamp>
                <startTime>1527599156104</startTime>
                <result>SUCCESS</result>
                <duration>3225</duration>
                <charset>windows-1252</charset>
                <keepLog>false</keepLog>
                <builtOn></builtOn>
                <workspace>C:\workarea\yplugin\work\workspace\free</workspace>
                <hudsonVersion>2.107.3</hudsonVersion>
                <scm class="hudson.scm.NullChangeLogParser"/>
                <culprits class="com.google.common.collect.EmptyImmutableSortedSet"/>
            </build>
            {code}
             
            oleg_nenashev Oleg Nenashev added a comment -

            Weird, but I cannot reproduce it.
            Please provide version of Jenkins and other plugins you have installed.

            oleg_nenashev Oleg Nenashev added a comment - Weird, but I cannot reproduce it. Please provide version of Jenkins and other plugins you have installed.
            teilo James Nord added a comment -

            weired yes
            it affects 2.107 2.121 and possibly much older.

            I have a fix I am testing (3 character changes) and is easily reproducible

            teilo James Nord added a comment - weired yes it affects 2.107 2.121 and possibly much older. I have a fix I am testing (3 character changes) and is easily reproducible
            cloudbees CloudBees Inc. made changes -
            Remote Link This issue links to "CloudBees Internal CJP-8826 (Web Link)" [ 20759 ]
            teilo James Nord added a comment -

            PR with unit test. code fix to follow.

            teilo James Nord added a comment - PR with unit test. code fix to follow.
            teilo James Nord made changes -
            Remote Link This issue links to "PR#3462 (Web Link)" [ 20766 ]
            teilo James Nord added a comment - - edited

            BlueOcean has run into this issue, see linked tickets and the craxy workaround

            teilo James Nord added a comment - - edited BlueOcean has run into this issue, see linked tickets and the craxy workaround
            teilo James Nord made changes -
            Link This issue relates to JENKINS-44624 [ JENKINS-44624 ]
            teilo James Nord made changes -
            Link This issue relates to JENKINS-44964 [ JENKINS-44964 ]
            teilo James Nord made changes -
            Link This issue relates to JENKINS-45476 [ JENKINS-45476 ]
            teilo James Nord added a comment -

            code has been there since the original introduction of TransientActionFactory. I think an over eager refactoring within the IDE was at play. It looks like there are some more iffy refactorings (but not subject to this issue / PR)

            teilo James Nord added a comment - code has been there since the original introduction of TransientActionFactory. I think an over eager refactoring within the IDE was at play. It looks like there are some more iffy refactorings (but not subject to this issue / PR)
            teilo James Nord made changes -
            Assignee James Nord [ teilo ]
            teilo James Nord made changes -
            Status Open [ 1 ] In Progress [ 3 ]
            teilo James Nord made changes -
            Status In Progress [ 3 ] In Review [ 10005 ]
            jglick Jesse Glick added a comment -

            Probably you lack context to file a fix for the weird code in TryBlueOceanMenu but could you please at least file a bug in blueocean-plugin requesting its removal with the fix of the core bug? (Or earlier, if they just cease to apply the factory overly broadly to ModelObject and actually enumerate the sensible target types.)

            jglick Jesse Glick added a comment - Probably you lack context to file a fix for the weird code in TryBlueOceanMenu but could you please at least file a bug in blueocean-plugin requesting its removal with the fix of the core bug? (Or earlier, if they just cease to apply the factory overly broadly to ModelObject and actually enumerate the sensible target types.)

            Code changed in jenkins
            User: James Nord
            Path:
            test/src/test/java/jenkins/model/TransientActionFactoryTest.java
            http://jenkins-ci.org/commit/jenkins/cf3389f33f19c53cb5faf4c4657d95c7549272cf
            Log:
            JENKINS-51584 Added unit test showing the issue.

            The Actions are created for the hudson.model.Queue$WaitingItem and
            hudson.model.Queue$BuildableItem but get persisted in the actions list
            of the build.

            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: James Nord Path: test/src/test/java/jenkins/model/TransientActionFactoryTest.java http://jenkins-ci.org/commit/jenkins/cf3389f33f19c53cb5faf4c4657d95c7549272cf Log: JENKINS-51584 Added unit test showing the issue. The Actions are created for the hudson.model.Queue$WaitingItem and hudson.model.Queue$BuildableItem but get persisted in the actions list of the build.

            Code changed in jenkins
            User: James Nord
            Path:
            test/src/test/java/jenkins/model/TransientActionFactoryTest.java
            http://jenkins-ci.org/commit/jenkins/ed4c94a0a10eacc6fc5dee6783f88f216cb0017d
            Log:
            JENKINS-51584 Unit test was not quite correct.

            Calling getActions(class) will include actions froma TransientActionFactory.

            To get the correct results just call getActions() and then filter the result.

            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: James Nord Path: test/src/test/java/jenkins/model/TransientActionFactoryTest.java http://jenkins-ci.org/commit/jenkins/ed4c94a0a10eacc6fc5dee6783f88f216cb0017d Log: JENKINS-51584 Unit test was not quite correct. Calling getActions(class) will include actions froma TransientActionFactory. To get the correct results just call getActions() and then filter the result.

            Code changed in jenkins
            User: James Nord
            Path:
            test/src/test/java/jenkins/model/TransientActionFactoryTest.java
            http://jenkins-ci.org/commit/jenkins/5b6acd7c2cd6a1f1784f2fe8b13875bde5a54fa0
            Log:
            JENKINS-51584 Unit test was not quite correct.

            Calling getActions(class) will include actions froma TransientActionFactory.

            To get the correct results just call getActions() and then filter the result.

            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: James Nord Path: test/src/test/java/jenkins/model/TransientActionFactoryTest.java http://jenkins-ci.org/commit/jenkins/5b6acd7c2cd6a1f1784f2fe8b13875bde5a54fa0 Log: JENKINS-51584 Unit test was not quite correct. Calling getActions(class) will include actions froma TransientActionFactory. To get the correct results just call getActions() and then filter the result.

            Code changed in jenkins
            User: James Nord
            Path:
            test/src/test/java/jenkins/model/TransientActionFactoryTest.java
            http://jenkins-ci.org/commit/jenkins/c4215dc6ad5f974c740bed925aaba655b27e453a
            Log:
            JENKINS-51584 Improve unit test to show allocation trace.

            improve the unit test to show the allocation trace on failure.

            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: James Nord Path: test/src/test/java/jenkins/model/TransientActionFactoryTest.java http://jenkins-ci.org/commit/jenkins/c4215dc6ad5f974c740bed925aaba655b27e453a Log: JENKINS-51584 Improve unit test to show allocation trace. improve the unit test to show the allocation trace on failure.

            Code changed in jenkins
            User: James Nord
            Path:
            core/src/main/java/hudson/model/Queue.java
            core/src/main/java/hudson/model/queue/WorkUnitContext.java
            http://jenkins-ci.org/commit/jenkins/8ca803819bbd7f5ecaf44179680d6694999e74d4
            Log:
            JENKINS-51584 do not store actions from TransientActionFactory.

            The code was updated to use the non deprecated getAllActions() to obtain
            the list of actions, however this was persisted in the actions causing
            the actions from TransientActionFactories to be persisted in Builds.

            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: James Nord Path: core/src/main/java/hudson/model/Queue.java core/src/main/java/hudson/model/queue/WorkUnitContext.java http://jenkins-ci.org/commit/jenkins/8ca803819bbd7f5ecaf44179680d6694999e74d4 Log: JENKINS-51584 do not store actions from TransientActionFactory. The code was updated to use the non deprecated getAllActions() to obtain the list of actions, however this was persisted in the actions causing the actions from TransientActionFactories to be persisted in Builds.

            Code changed in jenkins
            User: James Nord
            Path:
            core/src/main/java/hudson/model/Queue.java
            core/src/main/java/hudson/model/queue/WorkUnitContext.java
            test/src/test/java/jenkins/model/TransientActionFactoryTest.java
            http://jenkins-ci.org/commit/jenkins/d4737b2b60438ce0e3cb7a8a6f26675f7c880914
            Log:
            Merge pull request #3462 from jtnord/JENKINS-51584

            JENKINS-51584 Actions from a TransientActionFactory should not be persisted

            Compare: https://github.com/jenkinsci/jenkins/compare/8872b44cc882...d4737b2b6043
            *NOTE:* This service been marked for deprecation: https://developer.github.com/changes/2018-04-25-github-services-deprecation/

            Functionality will be removed from GitHub.com on January 31st, 2019.

            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: James Nord Path: core/src/main/java/hudson/model/Queue.java core/src/main/java/hudson/model/queue/WorkUnitContext.java test/src/test/java/jenkins/model/TransientActionFactoryTest.java http://jenkins-ci.org/commit/jenkins/d4737b2b60438ce0e3cb7a8a6f26675f7c880914 Log: Merge pull request #3462 from jtnord/ JENKINS-51584 JENKINS-51584 Actions from a TransientActionFactory should not be persisted Compare: https://github.com/jenkinsci/jenkins/compare/8872b44cc882...d4737b2b6043 * NOTE: * This service been marked for deprecation: https://developer.github.com/changes/2018-04-25-github-services-deprecation/ Functionality will be removed from GitHub.com on January 31st, 2019.
            teilo James Nord made changes -
            Resolution Fixed [ 1 ]
            Status In Review [ 10005 ] Resolved [ 5 ]
            teilo James Nord made changes -
            Link This issue relates to JENKINS-51627 [ JENKINS-51627 ]
            teilo James Nord made changes -
            Labels lts-candidate
            oleg_nenashev Oleg Nenashev added a comment -

            Fixed in 2.126

            oleg_nenashev Oleg Nenashev added a comment - Fixed in 2.126
            olivergondza Oliver Gondža made changes -
            Labels lts-candidate 2.121.2-fixed

            Code changed in jenkins
            User: James Nord
            Path:
            core/src/main/java/hudson/model/Queue.java
            core/src/main/java/hudson/model/queue/WorkUnitContext.java
            test/src/test/java/jenkins/model/TransientActionFactoryTest.java
            http://jenkins-ci.org/commit/jenkins/4f576414b544a3d78e7156e6b1d1b12ed7406455
            Log:
            Merge pull request #3462 from jtnord/JENKINS-51584

            JENKINS-51584 Actions from a TransientActionFactory should not be persisted

            (cherry picked from commit d4737b2b60438ce0e3cb7a8a6f26675f7c880914)

            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: James Nord Path: core/src/main/java/hudson/model/Queue.java core/src/main/java/hudson/model/queue/WorkUnitContext.java test/src/test/java/jenkins/model/TransientActionFactoryTest.java http://jenkins-ci.org/commit/jenkins/4f576414b544a3d78e7156e6b1d1b12ed7406455 Log: Merge pull request #3462 from jtnord/ JENKINS-51584 JENKINS-51584 Actions from a TransientActionFactory should not be persisted (cherry picked from commit d4737b2b60438ce0e3cb7a8a6f26675f7c880914)
            teilo James Nord made changes -
            Assignee James Nord [ teilo ]

            People

              Unassigned Unassigned
              teilo James Nord
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: