You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cloudstack.apache.org by "Ivan Kudryavtsev (JIRA)" <ji...@apache.org> on 2017/12/14 09:57:00 UTC

[jira] [Closed] (CLOUDSTACK-10188) Resource Accounting for primary storage is Broken

     [ https://issues.apache.org/jira/browse/CLOUDSTACK-10188?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ivan Kudryavtsev closed CLOUDSTACK-10188.
-----------------------------------------
    Resolution: Fixed

The reason resource accounting is broken is default value of resourcecount.check.interval set to 0. Necessary to change to some other reasonable value.

> Resource Accounting for primary storage is Broken
> -------------------------------------------------
>
>                 Key: CLOUDSTACK-10188
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-10188
>             Project: CloudStack
>          Issue Type: Bug
>      Security Level: Public(Anyone can view this level - this is the default.) 
>    Affects Versions: 4.10.0.0
>            Reporter: Ivan Kudryavtsev
>            Priority: Blocker
>
> It happens rarely for Domain Admin, probably other roles are affected. We meet it once a week. It's for resource accounting. Domain admin resource quota is 200GB of primary storage. During continouos creation of VMs and removing them it leads to "Maximum number of resources of type 'primary_storage' for domain id=2 has been exceeded", however only 26 GB is used actually. 
> {code:java}
> com.cloud.exception.ResourceAllocationException: Maximum number of resources of type 'primary_storage' for domain id=2 has been exceeded.
> 	at com.cloud.resourcelimit.ResourceLimitManagerImpl$1.doInTransactionWithoutResult(ResourceLimitManagerImpl.java:470)
> 	at com.cloud.utils.db.TransactionCallbackWithExceptionNoReturn.doInTransaction(TransactionCallbackWithExceptionNoReturn.java:25)
> 	at com.cloud.utils.db.TransactionCallbackWithExceptionNoReturn.doInTransaction(TransactionCallbackWithExceptionNoReturn.java:21)
> 	at com.cloud.utils.db.Transaction.execute(Transaction.java:40)
> 	at com.cloud.resourcelimit.ResourceLimitManagerImpl.checkResourceLimit(ResourceLimitManagerImpl.java:429)
> 	at com.cloud.vm.UserVmManagerImpl.createVirtualMachine(UserVmManagerImpl.java:3203)
> 	at com.cloud.vm.UserVmManagerImpl.createBasicSecurityGroupVirtualMachine(UserVmManagerImpl.java:2904)
> 	at com.cloud.vm.UserVmManagerImpl.createVirtualMachine(UserVmManagerImpl.java:4482)
> 	at sun.reflect.GeneratedMethodAccessor484.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)
> 	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
> 	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
> 	at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
> 	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
> 	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
> 	at com.sun.proxy.$Proxy211.createVirtualMachine(Unknown Source)
> 	at org.apache.cloudstack.api.command.user.vm.DeployVMCmd.create(DeployVMCmd.java:475)
> 	at com.cloud.api.dispatch.CommandCreationWorker.handle(CommandCreationWorker.java:47)
> 	at com.cloud.api.dispatch.DispatchChain.dispatch(DispatchChain.java:37)
> 	at com.cloud.api.ApiDispatcher.dispatchCreateCmd(ApiDispatcher.java:84)
> 	at com.cloud.api.ApiServer.queueCommand(ApiServer.java:653)
> 	at com.cloud.api.ApiServer.handleRequest(ApiServer.java:553)
> 	at com.cloud.api.ApiServlet.processRequestInContext(ApiServlet.java:297)
> 	at com.cloud.api.ApiServlet$1.run(ApiServlet.java:129)
> 	at org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call(DefaultManagedContext.java:56)
> 	at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWithContext(DefaultManagedContext.java:103)
> 	at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWithContext(DefaultManagedContext.java:53)
> 	at com.cloud.api.ApiServlet.processRequest(ApiServlet.java:126)
> 	at com.cloud.api.ApiServlet.doGet(ApiServlet.java:88)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
> 	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
> 	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:221)
> 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
> 	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
> 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
> 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
> 	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)
> 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
> 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:436)
> 	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078)
> 	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)
> 	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1757)
> 	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1716)
> 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> 	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
> 	at java.lang.Thread.run(Thread.java:748)
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)