[
https://issues.jboss.org/browse/TEIID-3747?page=com.atlassian.jira.plugin...
]
Ramesh Reddy commented on TEIID-3747:
-------------------------------------
JBoss CLI, or Admin Api does not generally allow you to just override the deployed
artifact. You would need to force it, which works as removing and adding the new
deployment. And this only applies when the deployment names match. Copying the updated
file into "deployments" file is akin to this forced update.
>The deleting before redeploying doesn't make sense. The
deployment model has always been that a new vdb by the same name can be deployed.
If
deleting does not make sense, that is one of the reasons, Teiid provides a VDB versioning
along with different types of configuration options for "Connection Type" where
user can move from one version to another. One could have updated the version, if you do
not want to delete the previous one. As per the same named VDB can be re-deployed, see
above again the difference between deployment names and VDB names. Both needs to match to
"force" the redeployment.
> This would be no different than a user who deploys using the
admin-console.
sure, but there is no remedy for one choosing same VDB name using
the two deployment names. This is no different from you deploying two different WAR files
with "same" web context name. The context name is result of the deployment, so
is the VDB name, which comes from the deployment of the artifact.
>That wouldn't work, because there would be a gap in between
when the VDB is actually accessible (between when its deleted and redeployed).
I
sure do hope no enterprise does this in production/testing, if they do, shame on their
process.
The only thing we can do in Teiid is check the current repository of deployed VDBs, then
gracefully reject the deployment rather than the error you seen above.
Deploying a .vdb where a dynamic vdb has already been deployed, fails
due to duplicates
---------------------------------------------------------------------------------------
Key: TEIID-3747
URL:
https://issues.jboss.org/browse/TEIID-3747
Project: Teiid
Issue Type: Bug
Components: Server
Affects Versions: 8.7.1.6_2
Reporter: Van Halbert
Assignee: Steven Hawkins
deployed a dynamic vdb using CLI: deploy teiidfiles/vdb/portfolio-vdb.xml
then in Designer, tried to deploy the same named VDB, but as a .vdb and the deployment
fails with errors indicating duplicate service:
11:26:31,301 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-6) MSC000001:
Failed to start service jboss.deployment.unit."Portfolio.vdb".INSTALL:
org.jboss.msc.service.StartException in service
jboss.deployment.unit."Portfolio.vdb".INSTALL: JBAS018733: Failed to process
phase INSTALL of deployment "Portfolio.vdb"
at
org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:166)
[jboss-as-server-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21]
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1980)
[jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Final-redhat-1]
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1913)
[jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Final-redhat-1]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
[rt.jar:1.7.0_55]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
[rt.jar:1.7.0_55]
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_55]
Caused by: org.jboss.msc.service.DuplicateServiceException: Service
jboss.teiid.ds-listener.Portfolio.1./accounts-ds is already registered
at
org.jboss.msc.service.ServiceRegistrationImpl.setInstance(ServiceRegistrationImpl.java:158)
[jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Final-redhat-1]
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)