Modifying event properties in a BusinessEvents rule.

Modifying event properties in a BusinessEvents rule.

book

Article ID: KB0093920

calendar_today

Updated On:

Products Versions
TIBCO BusinessEvents Enterprise Edition -
Not Applicable -

Description

Resolution:
The following exception occurs when modifying event properties in a BusinessEvents rule.

Exceptions:
2016 Jun 08 17:14:49:059 GMT +2 NLVHPRAAB00121.solon.prd Info [$default.be.mt$.Thread.9] - [user] [inference-class] Exceptioncom.tibco.cep.runtime.model.exception.impl.BEExceptionImpl: com.tibco.cep.runtime.model.event.impl.EventPropertyModificationException: Modified event property after assertion.  Property name: userClass Event: be.gen.Events.UA.ExtraCare.uaBEConceptDeleteRequest@id=60019
    at com.tibco.cep.runtime.model.event.impl.SimpleEventImpl.modified(SimpleEventImpl.java:281)
    at be.gen.Events.UA.ExtraCare.uaBEConceptDeleteRequest.set$2zuserClass(uaBEConceptDeleteRequest.java:50)
    at be.gen.Rules.UA.ExtraCare.uaBEConceptDeleteRequest$uaBEConceptDeleteRequest_a.execute(uaBEConceptDeleteRequest.java:33)
    at com.tibco.cep.kernel.core.rete.ReteWM.resolveConflict(SourceFile:330)
    at com.tibco.cep.kernel.core.rete.ReteWM$6.doTxnWork(SourceFile:1493)
    at com.tibco.cep.kernel.core.rete.BeTransaction.run(SourceFile:141)
    at com.tibco.cep.kernel.core.rete.BeTransaction.execute(SourceFile:101)
    at com.tibco.cep.kernel.core.rete.ReteWM.executeRules(SourceFile:1399)
    at com.tibco.cep.runtime.session.impl.RuleSessionImpl$4.doTxnWork(RuleSessionImpl.java:1163)
    at com.tibco.cep.kernel.core.rete.BeTransaction.run(SourceFile:141)
    at com.tibco.cep.kernel.core.rete.BeTransaction.execute(SourceFile:101)
    at com.tibco.cep.runtime.session.impl.RuleSessionImpl.preprocessPassthru(RuleSessionImpl.java:1141)
    at com.tibco.cep.runtime.service.cluster.ClusterTaskController$1.doTxnWork(ClusterTaskController.java:78)
    at com.tibco.cep.kernel.core.rete.BeTransaction.run(SourceFile:156)
    at com.tibco.cep.kernel.core.rete.BeTransaction.execute(SourceFile:101)
    at com.tibco.cep.runtime.service.cluster.ClusterTaskController.executeTask(ClusterTaskController.java:62)
    at com.tibco.cep.runtime.scheduler.impl.WorkerBasedControllerV2$WorkerTask.run(WorkerBasedControllerV2.java:520)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at com.tibco.cep.runtime.util.CustomBEManagedThread.run(CustomBEManagedThread.java:24)

    
Modifying an event should be done through the preprocessor. After assertion, the modifying of an event is not allowed and the changes of the event are not persistent. Updating event properties in RTC is no longer allowed from BusinessEvents beginning with release 5.2.0. Attempting to do so will throw the above EventPropertyModificationException. To revert back to previous behavior (BE 5.1.x or BE 4.x) use the following cdd property in the cluster area.

be.engine.event.modification.allowed.during.rtc=true

This cdd property will allow Event property modification in a BusinessEvents rule. Note that updating event in a pre-processor is still allowed.

Issue/Introduction

Modifying event properties in a BusinessEvents rule.