I understand, but we need to understand why that stack becomes empty. AFAIK, if we follow the proper APIs, stack should not become empty
On Tue, Jul 7, 2015 at 5:47 PM, Kasun Indrasiri <[email protected]> wrote: > Yeah, we should always check for an empty stack. > > On Tue, Jul 7, 2015 at 5:17 PM, Malaka Silva <[email protected]> wrote: > >> I think we need to check isEmpty as well. >> >> On Tue, Jul 7, 2015 at 3:41 PM, Jagath Sisirakumara Ariyarathne < >> [email protected]> wrote: >> >>> Hi, >>> >>> I am working on [1] and found that the cause of the exception mentioned >>> below is in the code segment in >>> org.wso2.carbon.context.internal.CarbonContextDataHolder >>> in carbon.utils. >>> >>> public void endTenantFlow() { >>> >>> Stack<CarbonContextDataHolder> carbonContextDataHolders = >>> parentContextHolderStack.get(); >>> if (carbonContextDataHolders != null) { >>> currentContextHolder.set(carbonContextDataHolders.pop()); >>> } >>> } >>> >>> *Exception :* >>> >>> java.util.EmptyStackException >>> at java.util.Stack.peek(Stack.java:102) >>> at java.util.Stack.pop(Stack.java:84) >>> at >>> org.wso2.carbon.context.internal.CarbonContextDataHolder.endTenantFlow(CarbonContextDataHolder.java:1291) >>> at >>> org.wso2.carbon.context.PrivilegedCarbonContext.endTenantFlow(PrivilegedCarbonContext.java:75) >>> at >>> org.wso2.carbon.ntask.core.impl.TaskQuartzJobAdapter.execute(TaskQuartzJobAdapter.java:69) >>> at org.quartz.core.JobRunShell.run(JobRunShell.java:213) >>> at >>> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) >>> at java.util.concurrent.FutureTask.run(FutureTask.java:262) >>> at >>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) >>> at >>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) >>> at java.lang.Thread.run(Thread.java:745) >>> >>> Issue occurs when it tries to pop elements from carbonContextDataHolders >>> stack when it is empty. >>> >>> Is it a possible scenario that this stack being empty and shouldn't it be >>> handled at CarbonContextDataHolder (check isEmpty in stack)? >>> >>> [1] - https://wso2.org/jira/browse/ESBJAVA-3832 >>> >>> Thanks >>> >>> -- >>> Jagath Ariyarathne >>> Technical Lead >>> WSO2 Inc. http://wso2.com/ >>> Email: [email protected] >>> Mob : +94 77 386 7048 >>> >>> >> >> >> -- >> >> Best Regards, >> >> Malaka Silva >> Senior Tech Lead >> M: +94 777 219 791 >> Tel : 94 11 214 5345 >> Fax :94 11 2145300 >> Skype : malaka.sampath.silva >> LinkedIn : http://www.linkedin.com/pub/malaka-silva/6/33/77 >> Blog : http://mrmalakasilva.blogspot.com/ >> >> WSO2, Inc. >> lean . enterprise . middleware >> http://www.wso2.com/ >> http://www.wso2.com/about/team/malaka-silva/ >> <http://wso2.com/about/team/malaka-silva/> >> >> Save a tree -Conserve nature & Save the world for your future. Print this >> email only if it is absolutely necessary. >> >> _______________________________________________ >> Dev mailing list >> [email protected] >> http://wso2.org/cgi-bin/mailman/listinfo/dev >> >> > > > -- > Kasun Indrasiri > Software Architect > WSO2, Inc.; http://wso2.com > lean.enterprise.middleware > > cell: +94 77 556 5206 > Blog : http://kasunpanorama.blogspot.com/ > > _______________________________________________ > Dev mailing list > [email protected] > http://wso2.org/cgi-bin/mailman/listinfo/dev > > -- Sameera Jayasoma, Software Architect, WSO2, Inc. (http://wso2.com) email: [email protected] blog: http://blog.sameera.org twitter: https://twitter.com/sameerajayasoma flickr: http://www.flickr.com/photos/sameera-jayasoma/collections Mobile: 0094776364456 Lean . Enterprise . Middleware
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
