7 Replies Latest reply on Apr 27, 2011 5:24 PM by Jim Campbell

    Intermittent compliance error - "Illegal Value"

    Jim Campbell

      We've been getting an intermittent and unreproducible error with our post-provisioning compliance job (i.e. checks server assets to make sure the post jobs ran properly).  The logs in the UI just say 'illegal value' but the stack trace was in the server log:

       

      [22 Mar 2011 11:58:07,509] [WorkItem-Thread-174] [ERROR] [user@domain:BLAdmins:] [Compliance] illegal value

      java.lang.RuntimeException: illegal value

      at com.bladelogic.model.asset.service.ServiceImpl.getStateValue(ServiceImpl.java:699)

      at com.bladelogic.model.asset.service.ServiceImpl.getAttributeValue(ServiceImpl.java:617)

      at com.bladelogic.ast.visitor.condition.evaluator.SingleAssetConditionResultTreeBuilderVisitor.visit(SingleAssetConditionResultTreeBuilderVisitor.java:181)

      at com.bladelogic.model.condition.expression.AssetAttributeConditionImpl.accept(AssetAttributeConditionImpl.java:398)

      at com.bladelogic.ast.visitor.condition.evaluator.SingleAssetConditionResultTreeBuilderVisitor.visitSubConditions(SingleAssetConditionResultTreeBuilderVisitor.java:240)

      at com.bladelogic.ast.visitor.condition.evaluator.SingleAssetConditionResultTreeBuilderVisitor.visit(SingleAssetConditionResultTreeBuilderVisitor.java:206)

      at com.bladelogic.model.condition.expression.NAryConditionImpl.accept(NAryConditionImpl.java:155)

      at com.bladelogic.ast.visitor.condition.evaluator.SingleAssetConditionResultTreeBuilderVisitor.visit(SingleAssetConditionResultTreeBuilderVisitor.java:316)

      at com.bladelogic.model.condition.expression.SelectorConditionImpl.accept(SelectorConditionImpl.java:462)

      at com.bladelogic.ast.visitor.condition.evaluator.SingleAssetConditionResultTreeBuilderVisitor.visitSubConditions(SingleAssetConditionResultTreeBuilderVisitor.java:229)

      at com.bladelogic.ast.visitor.condition.evaluator.SingleAssetConditionResultTreeBuilderVisitor.visit(SingleAssetConditionResultTreeBuilderVisitor.java:206)

      at com.bladelogic.model.condition.expression.NAryConditionImpl.accept(NAryConditionImpl.java:155)

      at com.bladelogic.ast.evaluator.ConditionEvaluator.collectAssetInformation(ConditionEvaluator.java:244)

      at com.bladelogic.ast.evaluator.ConditionEvaluator.evaluate(ConditionEvaluator.java:154)

      at com.bladelogic.model.job.compliance.compliance.ComplianceJobWorkItemImpl.doWorkItemExecute(ComplianceJobWorkItemImpl.java:183)

      at com.bladelogic.model.job.workitem.ComponentBasedJobWorkItemImpl.execute(ComponentBasedJobWorkItemImpl.java:119)

      at com.bladelogic.app.service.workitem.WorkItem.doExecute(WorkItem.java:111)

      at com.bladelogic.app.service.workitem.thread.WorkItemThread.execute(WorkItemThread.java:171)

      at com.bladelogic.app.service.workitem.thread.WorkItemThread.execute(WorkItemThread.java:48)

      at com.bladelogic.app.service.thread.BlBlockingThread.run(BlBlockingThread.java:92)

       

      Has anyone seen something like this before?  Every time I rerun the compliance job when I come across one of these it runs fine.  I thought it might be a timing issue with discovery/compliance (i.e. the component wasn't available when compliance started) but I've just gotten this same error with the discovery/compliance jobs separated by a job that reboots so it can't be a timing issue.  It also doesn't occur very frequently, but enough to be an annoyance.  I just ran a provision job targetting 7 identical virtual servers, used the same post-provisioning job on each; 6 of them ran without problems and only one had this error.

       

      The compliance job includes a large number of parts with some being extended objects, but the RSCD log on the target server seems to indicate collection of parts finished and it was the compliance part of the job that failed.  If I knew what rule/part was causing failure I could try to fix it, but the error above is the only thing I can find.