Scheduled report fails to send
search cancel

Scheduled report fails to send

book

Article ID: 278080

calendar_today

Updated On:

Products

Data Loss Prevention Data Loss Prevention Enforce

Issue/Introduction

Scheduled reports are not delivered on time, Enforce shows the following warning

Code 2405
Summary Unable to run scheduled report
Detail The scheduled report REPORT DISTRIBUTION Confirmation Task-EM owned by <user account> encountered an error: protect manager error [602].



Environment

Check Enforce(tomcat logs) for the following:
SEVERE [org.apache.ojb.odmg.TransactionImpl] Cannot obtain PersistenceBroker from PersistenceBrokerFactory, found PBKey was org.apache.ojb.broker.PBKey: jcdAlias=oracle-thin, user=null, password=null
Cause:
org.apache.ojb.broker.PBFactoryException: Borrow broker from pool failed, using PBKey org.apache.ojb.broker.PBKey: jcdAlias=oracle-thin, user=null, password=nullorg.apache.ojb.broker.PBFactoryException: Borrow broker from pool failed, using PBKey org.apache.ojb.broker.PBKey: jcdAlias=oracle-thin, user=null, password=null
    at org.apache.ojb.broker.core.PersistenceBrokerFactoryDefaultImpl.createPersistenceBroker(PersistenceBrokerFactoryDefaultImpl.java:120)
    at org.apache.ojb.odmg.TransactionImpl.getBrokerInternal(TransactionImpl.java:1182)
    at org.apache.ojb.odmg.TransactionImpl.getBroker(TransactionImpl.java:1196)
    at com.vontu.model.ojb.OJBTransaction.<init>(OJBTransaction.java:61)
    at com.vontu.model.ojb.OJBSystem.beginTransaction(OJBSystem.java:329)
    at com.vontu.model.ModelProxy.beginTransaction(ModelProxy.java:51)
    at com.vontu.model.notification.NotificationModel.beginTransaction(NotificationModel.java:151)
    at com.vontu.model.ModelProxy.beginTransaction(ModelProxy.java:51)
    at com.vontu.incidenthandler.command.enforce.TransactionControlPrePostProcessor.preProcess(TransactionControlPrePostProcessor.java:64)
    at com.vontu.command.CommandRuntime.preProcess(CommandRuntime.java:941)
    at com.vontu.command.CommandRuntime.executeCommands(CommandRuntime.java:731)
    at com.vontu.command.CommandRuntime.access$000(CommandRuntime.java:103)
    at com.vontu.command.CommandRuntime$CommandExecutor.run(CommandRuntime.java:1238)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
Caused by: java.util.NoSuchElementException
    at org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKeyedObjectPool.java:808)
    at org.apache.ojb.broker.core.PersistenceBrokerFactoryDefaultImpl.createPersistenceBroker(PersistenceBrokerFactoryDefaultImpl.java:101)
    ... 15 more

Cause

Many reports sent in parallel can exhaust the active connection pool for oracle. This setting can be configured in OJB.properties 

Resolution

Open OJB.properties located in the config directory on Enforce
Locate the following lines:
# maximum number of brokers that can be borrowed from the
# pool at one time. When non-positive, there is no limit.
maxActive=20

Increase this number incrementally until the issue is no longer observed.