Hi All,

Answer is: No. Absolutely not!!

If you deployed something from the CAR file and it you want to update it
later, do the change in DevS, repack the CAR file and redeploy the new CAR
file.

Thanks and Regards,
Harshana


On Wed, Jan 22, 2014 at 11:10 AM, Asanka Vithanage <[email protected]> wrote:

> Hi All,
>
> If some user try to update a artifact deployed through an CApp as
> described in below scenario, What should be the our answer to an user?
>
> *Scenario:*
> 1. User have created a CApp which include all the artifacts need to try
> out MS and MP on ESB [Attached a such artifact].
> 2. Start the ESB server and Deploys the created CApp on ESB server
> 3. Due to some reason user wants to just change an one Message Processor
> parameter like "Maximum delivery attempts", So using admin console UI he
> changes the parameter value {[UI is the easiest way to do such a small
> change]
> 4. Once user restart the server, he will experience the below listed
> exception on stack-trace due to artifact duplication.
>
> *Note*:
> With current CApp deploy architecture all artifacts deployed through a
> CApp keep on a temporarily location
> [wso2esb-4.8.1/repository/carbonapps/work/] and At every restart CApp will
> redeploy again.
> But if user edits one of capp deployed artifacts It will duplicate same
> artifact inside wso2esb-4.8.1/repository/deployment/server folder hierarchy
> as well.So artifact duplication happen at server restart time.
>
>
> So whats our stand on this kind of situation?
> May be we can say we are not allow to update CApp deployed artifacts
> through Admin console UI.
> But we do have real usability issue here, since users tend to use admin
> console UI to make a small changes on an artifact.
> Further our docs [1] does not say anything about this as well.
>
> [This concern is valid for all the wso2 products which supports CApp
> deployment]
>
>
> *Observed following Error:*
>
> [2014-01-21 18:17:55,517] ERROR - MessageProcessorDeployer Message
> Processor Deployment from the file :
> /home/asankav/servers/releasetest/ESB481/wso2esb-4.8.1/repository/carbonapps/work/1390308470104ESB_MSandMP_WSO2MB_Schenario_TestPack_O_CApp_1.0.0.car/MessageProcessorO1_1.0.0/MessageProcessorO1-1.0.0.xml
> : Failed.
> org.apache.synapse.SynapseException: Error scheduling job : JobDetail
> 'synapse.message.processor.quartz.MessageProcessorO1-job':  jobClass:
> 'org.apache.synapse.message.processor.impl.forwarder.ForwardingService
> concurrentExectionDisallowed: false persistJobDataAfterExecution: false
> isDurable: false requestsRecovers: false with trigger Trigger
> 'DEFAULT.MessageProcessorO1-trigger':  triggerClass:
> 'org.quartz.impl.triggers.SimpleTriggerImpl calendar: 'null'
> misfireInstruction: 4 nextFireTime: Tue Jan 21 18:17:55 IST 2014
>     at
> org.apache.synapse.message.processor.impl.ScheduledMessageProcessor.start(ScheduledMessageProcessor.java:153)
>     at
> org.apache.synapse.message.processor.impl.ScheduledMessageProcessor.init(ScheduledMessageProcessor.java:108)
>     at
> org.apache.synapse.message.processor.impl.forwarder.ScheduledMessageForwardingProcessor.init(ScheduledMessageForwardingProcessor.java:43)
>     at
> org.apache.synapse.deployers.MessageProcessorDeployer.deploySynapseArtifact(MessageProcessorDeployer.java:52)
>     at
> org.apache.synapse.deployers.AbstractSynapseArtifactDeployer.deploy(AbstractSynapseArtifactDeployer.java:190)
>     at
> org.wso2.carbon.application.deployer.synapse.SynapseAppDeployer.deployArtifacts(SynapseAppDeployer.java:140)
>     at
> org.wso2.carbon.application.deployer.internal.ApplicationManager.deployCarbonApp(ApplicationManager.java:251)
>     at
> org.wso2.carbon.application.deployer.CappAxis2Deployer.deploy(CappAxis2Deployer.java:114)
>     at
> org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136)
>     at
> org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:807)
>     at
> org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:144)
>     at
> org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:377)
>     at
> org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:254)
>     at
> org.apache.axis2.deployment.RepositoryListener.startListener(RepositoryListener.java:371)
>     at
> org.apache.axis2.deployment.scheduler.SchedulerTask.checkRepository(SchedulerTask.java:59)
>     at
> org.apache.axis2.deployment.scheduler.SchedulerTask.run(SchedulerTask.java:67)
>     at
> org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.runAxisDeployment(CarbonDeploymentSchedulerTask.java:79)
>     at
> org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.run(CarbonDeploymentSchedulerTask.java:124)
>     at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
>     at
> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
>     at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
>     at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
>     at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
>     at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
>     at java.lang.Thread.run(Thread.java:662)
> Caused by: org.quartz.ObjectAlreadyExistsException: Unable to store Job :
> 'synapse.message.processor.quartz.MessageProcessorO1-job', because one
> already exists with this identification.
>     at org.quartz.simpl.RAMJobStore.storeJob(RAMJobStore.java:277)
>     at
> org.quartz.simpl.RAMJobStore.storeJobAndTrigger(RAMJobStore.java:249)
>     at
> org.quartz.core.QuartzScheduler.scheduleJob(QuartzScheduler.java:840)
>     at org.quartz.impl.StdScheduler.scheduleJob(StdScheduler.java:250)
>     at
> org.apache.synapse.message.processor.impl.ScheduledMessageProcessor.start(ScheduledMessageProcessor.java:151)
>     ... 26 more
> [2014-01-21 18:17:55,575] ERROR - AbstractSynapseArtifactDeployer
> Deployment of the Synapse Artifact from file :
> /home/asankav/servers/releasetest/ESB481/wso2esb-4.8.1/repository/carbonapps/work/1390308470104ESB_MSandMP_WSO2MB_Schenario_TestPack_O_CApp_1.0.0.car/MessageProcessorO1_1.0.0/MessageProcessorO1-1.0.0.xml
> : Failed!
> org.apache.synapse.deployers.SynapseArtifactDeploymentException: Message
> Processor Deployment from the file :
> /home/asankav/servers/releasetest/ESB481/wso2esb-4.8.1/repository/carbonapps/work/1390308470104ESB_MSandMP_WSO2MB_Schenario_TestPack_O_CApp_1.0.0.car/MessageProcessorO1_1.0.0/MessageProcessorO1-1.0.0.xml
> : Failed.
>     at
> org.apache.synapse.deployers.AbstractSynapseArtifactDeployer.handleSynapseArtifactDeploymentError(AbstractSynapseArtifactDeployer.java:471)
>     at
> org.apache.synapse.deployers.MessageProcessorDeployer.deploySynapseArtifact(MessageProcessorDeployer.java:71)
>     at
> org.apache.synapse.deployers.AbstractSynapseArtifactDeployer.deploy(AbstractSynapseArtifactDeployer.java:190)
>     at
> org.wso2.carbon.application.deployer.synapse.SynapseAppDeployer.deployArtifacts(SynapseAppDeployer.java:140)
>     at
> org.wso2.carbon.application.deployer.internal.ApplicationManager.deployCarbonApp(ApplicationManager.java:251)
>     at
> org.wso2.carbon.application.deployer.CappAxis2Deployer.deploy(CappAxis2Deployer.java:114)
>     at
> org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136)
>     at
> org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:807)
>     at
> org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:144)
>     at
> org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:377)
>     at
> org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:254)
>     at
> org.apache.axis2.deployment.RepositoryListener.startListener(RepositoryListener.java:371)
>     at
> org.apache.axis2.deployment.scheduler.SchedulerTask.checkRepository(SchedulerTask.java:59)
>     at
> org.apache.axis2.deployment.scheduler.SchedulerTask.run(SchedulerTask.java:67)
>     at
> org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.runAxisDeployment(CarbonDeploymentSchedulerTask.java:79)
>     at
> org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.run(CarbonDeploymentSchedulerTask.java:124)
>     at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
>     at
> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
>     at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
>     at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
>     at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
>     at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
>     at java.lang.Thread.run(Thread.java:662)
> Caused by: org.apache.synapse.SynapseException: Error scheduling job :
> JobDetail 'synapse.message.processor.quartz.MessageProcessorO1-job':
> jobClass:
> 'org.apache.synapse.message.processor.impl.forwarder.ForwardingService
> concurrentExectionDisallowed: false persistJobDataAfterExecution: false
> isDurable: false requestsRecovers: false with trigger Trigger
> 'DEFAULT.MessageProcessorO1-trigger':  triggerClass:
> 'org.quartz.impl.triggers.SimpleTriggerImpl calendar: 'null'
> misfireInstruction: 4 nextFireTime: Tue Jan 21 18:17:55 IST 2014
>     at
> org.apache.synapse.message.processor.impl.ScheduledMessageProcessor.start(ScheduledMessageProcessor.java:153)
>     at
> org.apache.synapse.message.processor.impl.ScheduledMessageProcessor.init(ScheduledMessageProcessor.java:108)
>     at
> org.apache.synapse.message.processor.impl.forwarder.ScheduledMessageForwardingProcessor.init(ScheduledMessageForwardingProcessor.java:43)
>     at
> org.apache.synapse.deployers.MessageProcessorDeployer.deploySynapseArtifact(MessageProcessorDeployer.java:52)
>     ... 23 more
> Caused by: org.quartz.ObjectAlreadyExistsException: Unable to store Job :
> 'synapse.message.processor.quartz.MessageProcessorO1-job', because one
> already exists with this identification.
>     at org.quartz.simpl.RAMJobStore.storeJob(RAMJobStore.java:277)
>     at
> org.quartz.simpl.RAMJobStore.storeJobAndTrigger(RAMJobStore.java:249)
>     at
> org.quartz.core.QuartzScheduler.scheduleJob(QuartzScheduler.java:840)
>     at org.quartz.impl.StdScheduler.scheduleJob(StdScheduler.java:250)
>     at
> org.apache.synapse.message.processor.impl.ScheduledMessageProcessor.start(ScheduledMessageProcessor.java:151)
>     ... 26 more
>
>
> [1] http://docs.wso2.org/display/Carbon420/C-App+Deployment+Process
>
> --
> Asanka Vithanage
> Senior Software Engineer -QA
> Mobile: +94 0716286708
> Email: [email protected]
> WSO2 Inc. www.wso2.com
>
>
> _______________________________________________
> Dev mailing list
> [email protected]
> http://wso2.org/cgi-bin/mailman/listinfo/dev
>
>


-- 

Harshana Martin
Associate Technical Lead
WSO2 Inc. : http://wso2.com

Mobile: +94 775 998 115
Profile: https://www.google.com/profiles/harshana05
Blog: http://harshana05.blogspot.com
Twitter: http://twitter.com/harshana05
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to