-
Bug
-
Resolution: Duplicate
-
High
-
6.4.0
-
31
-
Severity 1 - Critical
-
2
-
Summary
Deleting an artifact definition from a build plan will corrupt any linked deployment plans with artifact download tasks. Can no longer create or deploy a release, nor delete the deployment project once affected. Source build plan can not be modified.
Steps to Reproduce
- Setup a build plan with 2 shared artifact definitions
- Create a deployment project linked to this build plan
- Add an environment with an artifact download task
- Build the source build plan
- Delete one of the artifact definitions
- Attempt to create a release off that result
Expected Results
Release can be created / deployed
Deployment project can be deleted
Source build plan can not be modified
Actual Results
The below exception is thrown in the UI as an Internal Server error and logged to the atlassian-bamboo.log when attempting to create a release / delete the project / change the source build plan:
org.springframework.orm.hibernate5.HibernateSystemException: Cannot instantiate abstract class or interface: : com.atlassian.bamboo.deployments.projects.persistence.items.AbstractMutableDeploymentProjectItem; nested exception is org.hibernate.InstantiationException: Cannot instantiate abstract class or interface: : com.atlassian.bamboo.deployments.projects.persistence.items.AbstractMutableDeploymentProjectItem at org.springframework.orm.hibernate5.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:296) at org.springframework.orm.hibernate5.HibernateTemplate.doExecute(HibernateTemplate.java:362) at org.springframework.orm.hibernate5.HibernateTemplate.execute(HibernateTemplate.java:313) at com.atlassian.bamboo.deployments.projects.persistence.DeploymentProjectDaoImpl.getProjectItems(DeploymentProjectDaoImpl.java:206) at sun.reflect.GeneratedMethodAccessor1679.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99) at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:282) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213) at com.sun.proxy.$Proxy89.getProjectItems(Unknown Source) at com.atlassian.bamboo.deployments.versions.service.DeploymentVersionServiceImpl$3.run(DeploymentVersionServiceImpl.java:454) at com.atlassian.bamboo.variable.CustomVariableContextImpl.withVariableSubstitutor(CustomVariableContextImpl.java:174) at com.atlassian.bamboo.deployments.versions.service.DeploymentVersionServiceImpl.getNewDeploymentVersionWithoutName(DeploymentVersionServiceImpl.java:447) at com.atlassian.bamboo.deployments.versions.service.DeploymentVersionServiceImpl.createDeploymentVersionInternal(DeploymentVersionServiceImpl.java:302) at com.atlassian.bamboo.deployments.versions.service.DeploymentVersionServiceImpl.access$000(DeploymentVersionServiceImpl.java:109) at com.atlassian.bamboo.deployments.versions.service.DeploymentVersionServiceImpl$2.apply(DeploymentVersionServiceImpl.java:280) at com.atlassian.bamboo.deployments.versions.service.DeploymentVersionServiceImpl$2.apply(DeploymentVersionServiceImpl.java:277) at com.atlassian.bamboo.core.ScopedExclusionServiceImpl.withLock(ScopedExclusionServiceImpl.java:63) at com.atlassian.bamboo.deployments.versions.service.DeploymentVersionServiceImpl.createDeploymentVersion(DeploymentVersionServiceImpl.java:277) at com.atlassian.bamboo.deployments.versions.actions.AbstractCreateDeploymentVersion.createVersion(AbstractCreateDeploymentVersion.java:117) at com.atlassian.bamboo.deployments.execution.actions.ExecuteManualDeployment.execute(ExecuteManualDeployment.java:210) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Notes
- The affected deployment plan will display "No shared artifacts found for related plan. Please configure the build plan to publish shared artifacts." despite shared artifacts being configured still on the source build plan.
Workaround
- Create a new plan with an artifact definition. This plan needs no content other than an artifact definition and its sole purpose is to be removed and in the next step.
- Remove this new plan created in step 1. This will trigger Bamboo to execute a DB cleanup and removes orphaned Artifact definition records which trigger the bug in affected plans.
- duplicates
-
BAM-19736 Renaming artifact in YAML break deployment
-
- Closed
-
-
BAM-19770 Bamboo fails to download shared artifact (in deployment) from Specs plan
-
- Closed
-
-
BAM-19783 Deleting the artifact definition from the plan causes problems in related deployments
-
- Closed
-
-
BAM-19948 Deployment project item list not updated when plan artifact is added/modified/removed through specs
-
- Closed
-
- is cloned as
-
BDEV-15095 Loading...
- mentioned in
-
Page Loading...
[BAM-19782] Deleting an artifact definition from a build plan will corrupt any linked deployment plans with artifact download tasks
Remote Link | Original: This issue links to "BDEV-15095 (Jira)" [ 405373 ] | New: This issue links to "BDEV-15095 (Hello Jira)" [ 405373 ] |
Remote Link | New: This issue links to "Page (Confluence)" [ 706521 ] |
Comment | [ A comment with security level 'atlassian-staff' was removed. ] |
Comment | [ A comment with security level 'atlassian-staff' was removed. ] |
Comment | [ A comment with security level 'atlassian-staff' was removed. ] |
Comment | [ It is a website that has a forum about deleting an artifact definition from a build. They have a plan that will corrupt any linked deployment plans with artifact download tasks. You must get [help to write a research paper|https://www.essaywritingland.com/research-paper-writing-help/] for the students to manage their college work. You can easily download it from the given links. Join it for more details. ] |
Comment | [ Artifact download has been given here for customers. We can download this in a better way from this blog. You can get [top essay writing services|https://bestonlinewritingservice.com/best-essay-writing-services/] to manage thesis assignments easily. Deleting an artifact means removing data completely about this app. A plan can be built keeping necessary information in mind. ] |
Workflow | Original: Bamboo Workflow 2016 v1 - Restricted [ 2647093 ] | New: JAC Bug Workflow v3 [ 3386186 ] |
Status | Original: Resolved [ 5 ] | New: Closed [ 6 ] |
Resolution | New: Duplicate [ 3 ] | |
Status | Original: Open [ 1 ] | New: Resolved [ 5 ] |