Purpose

This page provides information regarding the following error that may come up on CMS Application while Synchronizing the application with the Knowledge base. Could not save Application "Application_name" in Analysis Service "LOCAL_NAME"

This happens when the Synchronize services option is used as shown below:


Applicable in CAST Version
Release
Yes/No
8.3.x (tick)
8.2.x(tick)
8.1.x(tick)
8.0.x(tick)
7.3.x(tick)
7.2.x(tick)
7.0.x(tick)
Applicable RDBMS
RDBMS
Yes/No
Oracle Server(tick)
Microsoft SQL Server(tick)
CSS3 (tick)
CSS2(tick)
CSS1(tick)
Action Plan

While performing "Synchronize Services" either manually or when the analysis is executed, sometimes an error comes up on the Analysis Manager window. It is:

Could not save Application "Application_name" in Analysis Service "LOCAL_NAME" 

This error is generated due to the fact that the Local Schema has been locked by another process and because of it the synchronize services throws the error.

To know the cause of the problem/error, open the CAST-MS.log. You will find something similar in that log as shown below:

ERR: 2016-01-12 11:21:23: Could not save Application "Application Name" in Analysis Service "Local Name"
                            com.castsoftware.java.ExternalException:Could not save Application "Application Name" in Analysis Service "Local Name"
                              com.castsoftware.pmc.actions.application.UpdateLocalDatabase.updateUserProject(UpdateLocalDatabase.java:283)
                              com.castsoftware.pmc.actions.application.UpdateLocalDatabase.executeAtomic(UpdateLocalDatabase.java:140)
                              com.castsoftware.pmc.actions.localservice.Synchronize.synchronizeUserProjects(Synchronize.java:318)
                              com.castsoftware.pmc.actions.localservice.Synchronize.synchronizeDatabase(Synchronize.java:127)
                              com.castsoftware.pmc.features.AutoSynchronizeServices.synchronizeDatabases(AutoSynchronizeServices.java:196)
                              com.castsoftware.pmc.features.AutoSynchronizeServices.autoSynchronize(AutoSynchronizeServices.java:137)
                              com.castsoftware.pmc.features.AutoSynchronizeServices.documentExecute(AutoSynchronizeServices.java:79)
                              com.castsoftware.mda.impl.MemoryTask.execute(MemoryTask.java:82)
                              com.castsoftware.java.treatment.Task.run(Task.java:275)
                              com.castsoftware.java.treatment.Task.runChildren(Task.java:388)
                              com.castsoftware.mda.impl.MemoryAction.execute(MemoryAction.java:253)
                              com.castsoftware.pmc.actions.localservice.Synchronize.execute(Synchronize.java:83)
                              com.castsoftware.mda.impl.MemoryAction.topExecute(MemoryAction.java:246)
                              com.castsoftware.mda.impl.MemoryAction$MemoryActionTask.documentExecute(MemoryAction.java:343)
                              com.castsoftware.mda.impl.MemoryTask.execute(MemoryTask.java:82)
                              com.castsoftware.java.treatment.Task.run(Task.java:275)
                              com.castsoftware.java.treatment.TaskExecutor$TaskMainThread.run(TaskExecutor.java:135)
                              java.lang.Thread.run(Thread.java:744)
                            UserProject Application Name already locked by "User Name"
                              com.castsoftware.java.ExternalException:UserProject Application Name already locked by User name
                                com.castsoftware.pmc.connection.ConnectionLocalToolkit$Locker.lock(ConnectionLocalToolkit.java:505)
                                com.castsoftware.pmc.connection.ConnectionLocalToolkit$Locker.lock(ConnectionLocalToolkit.java:470)
                                com.castsoftware.pmc.connection.synchro.UserProjectOptionAdapter.defineKeys(UserProjectOptionAdapter.java:177)
                                com.castsoftware.pmc.connection.synchro.ServiceTransactionFactory$ServiceTransaction.defineKeys(ServiceTransactionFactory.java:166)
                                com.castsoftware.pmc.connection.synchro.ServiceTransactionFactory$ServiceTransaction.generateSynchroKeysFromEntities(ServiceTransactionFactory.java:160)
                                com.castsoftware.pmc.actions.application.UpdateLocalDatabase.updateUserProject(UpdateLocalDatabase.java:272)
                                com.castsoftware.pmc.actions.application.UpdateLocalDatabase.executeAtomic(UpdateLocalDatabase.java:140)
                                com.castsoftware.pmc.actions.localservice.Synchronize.synchronizeUserProjects(Synchronize.java:318)
                                com.castsoftware.pmc.actions.localservice.Synchronize.synchronizeDatabase(Synchronize.java:127)
                                com.castsoftware.pmc.features.AutoSynchronizeServices.synchronizeDatabases(AutoSynchronizeServices.java:196)
                                com.castsoftware.pmc.features.AutoSynchronizeServices.autoSynchronize(AutoSynchronizeServices.java:137)
                                com.castsoftware.pmc.features.AutoSynchronizeServices.documentExecute(AutoSynchronizeServices.java:79)
                                com.castsoftware.mda.impl.MemoryTask.execute(MemoryTask.java:82)
                                com.castsoftware.java.treatment.Task.run(Task.java:275)
                                com.castsoftware.java.treatment.Task.runChildren(Task.java:388)
                                com.castsoftware.mda.impl.MemoryAction.execute(MemoryAction.java:253)
                                com.castsoftware.pmc.actions.localservice.Synchronize.execute(Synchronize.java:83)
                                com.castsoftware.mda.impl.MemoryAction.topExecute(MemoryAction.java:246)
                                com.castsoftware.mda.impl.MemoryAction$MemoryActionTask.documentExecute(MemoryAction.java:343)
                                com.castsoftware.mda.impl.MemoryTask.execute(MemoryTask.java:82)
                                com.castsoftware.java.treatment.Task.run(Task.java:275)
                                com.castsoftware.java.treatment.TaskExecutor$TaskMainThread.run(TaskExecutor.java:135)
                                java.lang.Thread.run(Thread.java:744)
INF: 2016-01-12 11:21:23: 	Task message: Could not save Application "Application Name" in Analysis Service "Local Name"


The above log provides the reason why the error came up. It is because of the record: UserProject "Application Name" already locked by "User Name".

Description: This means that the Local Base is currently locked by another process or user.

NOTE

Before applying the below remediation, ensure that no other user is connected to the same Schema.

To solve this problem use the following steps.

  1. Open Server Manager and connect to profile in which the Local schema is present.
  2. Click on the Local Schema which is giving the above mentioned error.
  3. Right-Click > Troubleshooting > Remove Locks, as shown below or you can follow this page : Server Manager - Remove Locks

  4. This will remove the existing locks on the schema from any other process or user.
  5. Then go to CAST-MS and Synchronize the application again. 
Notes/comments


Related Pages