Uploaded image for project: 'ZZZ-WSO2 App Manager'
  1. ZZZ-WSO2 App Manager
  2. APPM-1141

Inconsistent notifications when unpublishing an app deleted from an external store

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Normal
    • Resolution: Fixed
    • Affects Version/s: 1.1.0
    • Fix Version/s: 1.1.0
    • Component/s: None
    • Labels:
      None
    • Environment:

      All datasources pointed to MySQL
      wso2appm-1.1.0-SNAPSHOT-07-12-2015
      JDK 1.7
      Ubuntu 13.04

    • Severity:
      Major
    • Estimated Complexity:
      Moderate
    • Test cases added:
      Yes

      Description

      Add an app to an external store
      Delete the app from the external store.
      Try to save external store configurations after unticking the relevant external store.

      • The UI indicates that the external store were updated successfully.
        But since the delete app no longer exists on the store the following error is thrown.
        The errors and notification should be consistent.
        
        [2015-12-08 16:16:27,774]  INFO - assets_router:jag Emitting event : login
        [2015-12-08 16:16:30,422]  INFO - assets_router:jag Emitting event : login
        [2015-12-08 16:16:37,622]  INFO - authenticate:jag Emitting event : login
        [2015-12-08 16:16:37,631]  INFO - authenticate:jag Emitting event : login
        [2015-12-08 16:16:37,666]  INFO - CarbonAuthenticationUtil 'tenant2@tenant2.com [2]' logged in at [2015-12-08 16:16:37,665+0530]
        [2015-12-08 16:16:37,822] ERROR - UserAwareAPIProvider Could not delete app :null from external store :Tenant2
        org.wso2.carbon.appmgt.api.AppManagementException: Error while getting UUID of APP - sss from the external  AppStore - for provider tenant2@tenant2.com.Reason -{"error" : true, "uuid" : null}
        	at org.wso2.carbon.appmgt.impl.publishers.WSO2ExternalAppStorePublisher.getUUID(WSO2ExternalAppStorePublisher.java:185)
        	at org.wso2.carbon.appmgt.impl.publishers.WSO2ExternalAppStorePublisher.deleteFromExternalStore(WSO2ExternalAppStorePublisher.java:211)
        	at org.wso2.carbon.appmgt.impl.publishers.WSO2ExternalAppStorePublisher.deleteFromStore(WSO2ExternalAppStorePublisher.java:140)
        	at org.wso2.carbon.appmgt.impl.APIProviderImpl.deleteFromExternalAppStores(APIProviderImpl.java:1885)
        	at org.wso2.carbon.appmgt.impl.APIProviderImpl.updateAppsInExternalAppStores(APIProviderImpl.java:1781)
        	at org.wso2.carbon.appmgt.impl.UserAwareAPIProvider.updateAppsInExternalAppStores(UserAwareAPIProvider.java:36)
        	at org.wso2.carbon.appmgt.hostobjects.APIProviderHostObject.jsFunction_updateExternalAppStores(APIProviderHostObject.java:3550)
        	at sun.reflect.GeneratedMethodAccessor310.invoke(Unknown Source)
        	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        	at java.lang.reflect.Method.invoke(Method.java:606)
        	at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:126)
        	at org.mozilla.javascript.FunctionObject.call(FunctionObject.java:386)
        	at org.mozilla.javascript.optimizer.OptRuntime.callN(OptRuntime.java:52)
        	at org.jaggeryjs.rhino.publisher.apis.v_1.c1._c_anonymous_28(/publisher/apis/v1/asset_api_router.jag:871)
        	at org.jaggeryjs.rhino.publisher.apis.v_1.c1.call(/publisher/apis/v1/asset_api_router.jag)
        	at org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:32)
        	at org.jaggeryjs.rhino.publisher.modules.c4._c_anonymous_12(/publisher/modules/router-g.js:183)
        	at org.jaggeryjs.rhino.publisher.modules.c4.call(/publisher/modules/router-g.js)
        	at org.mozilla.javascript.optimizer.OptRuntime.call2(OptRuntime.java:42)
        	at org.jaggeryjs.rhino.publisher.apis.v_1.c1._c_anonymous_1(/publisher/apis/v1/asset_api_router.jag:1261)
        	at org.jaggeryjs.rhino.publisher.apis.v_1.c1.call(/publisher/apis/v1/asset_api_router.jag)
        	at org.mozilla.javascript.ScriptRuntime.applyOrCall(ScriptRuntime.java:2430)
        	at org.mozilla.javascript.BaseFunction.execIdCall(BaseFunction.java:269)
        	at org.mozilla.javascript.IdFunctionObject.call(IdFunctionObject.java:97)
        	at org.mozilla.javascript.optimizer.OptRuntime.call2(OptRuntime.java:42)
        	at org.jaggeryjs.rhino.publisher.modules.c6._c_anonymous_17(/publisher/modules/publisher.js:438)
        	at org.jaggeryjs.rhino.publisher.modules.c6.call(/publisher/modules/publisher.js)
        	at org.mozilla.javascript.optimizer.OptRuntime.call0(OptRuntime.java:23)
        	at org.mozilla.javascript.gen._store__server_js_11._c_anonymous_17([store]/server.js:273)
        	at org.mozilla.javascript.gen._store__server_js_11.call([store]/server.js)
        	at org.mozilla.javascript.optimizer.OptRuntime.call2(OptRuntime.java:42)
        	at org.jaggeryjs.rhino.publisher.modules.c6._c_anonymous_16(/publisher/modules/publisher.js:433)
        	at org.jaggeryjs.rhino.publisher.modules.c6.call(/publisher/modules/publisher.js)
        	at org.mozilla.javascript.optimizer.OptRuntime.callN(OptRuntime.java:52)
        	at org.jaggeryjs.rhino.publisher.apis.v_1.c1._c_script_0(/publisher/apis/v1/asset_api_router.jag:17)
        	at org.jaggeryjs.rhino.publisher.apis.v_1.c1.call(/publisher/apis/v1/asset_api_router.jag)
        	at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:394)
        	at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3091)
        	at org.jaggeryjs.rhino.publisher.apis.v_1.c1.call(/publisher/apis/v1/asset_api_router.jag)
        	at org.jaggeryjs.rhino.publisher.apis.v_1.c1.exec(/publisher/apis/v1/asset_api_router.jag)
        	at org.jaggeryjs.scriptengine.engine.RhinoEngine.execScript(RhinoEngine.java:567)
        	at org.jaggeryjs.scriptengine.engine.RhinoEngine.exec(RhinoEngine.java:273)
        	at org.jaggeryjs.jaggery.core.manager.WebAppManager.execute(WebAppManager.java:536)
        	at org.jaggeryjs.jaggery.core.JaggeryServlet.doPost(JaggeryServlet.java:29)
        	at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)
        	at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
        	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
        	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:748)
        	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:486)
        	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:378)
        	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:338)
        	at org.jaggeryjs.jaggery.core.JaggeryFilter.doFilter(JaggeryFilter.java:21)
        	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
        	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
        	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
        	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
        	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
        	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
        	at org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:178)
        	at org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47)
        	at org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:56)
        	at org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47)
        	at org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:141)
        	at org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:156)
        	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
        	at org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:52)
        	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
        	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
        	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)
        	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
        	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1736)
        	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1695)
        	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        	at java.lang.Thread.run(Thread.java:744)
        
        
        

        Attachments

          Activity

            People

            • Assignee:
              jenananthan@wso2.com Jenananthan Yogendran
              Reporter:
              asanthi@wso2.com Asanthi Kulasinghe
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: