Event Issues

Issue

Cause

Diagnosis

Resolution

There are many file events(approx 150) set up in Adeptia. They are all ‘On FileCreated’ with file include criteria as "*", w/ a polling frequency of 30 seconds, a stable time of 15 seconds, and ‘Trigger in sequence’ unchecked. The events are misfired, and some go on status as Queued in the dashboard.

  1. If the machine is down when events are scheduled to fire.

  2. Suppose the kernel is down when the event is scheduled to fire. So whenever the Adeptia server is restarted then the triggers that are misfired in between are handled.

  3. If a new thread isn’t available when the event is scheduled to fire because all the threads are occupied by the running Events. This could happen when the number of event activity scheduled to get fire at the particular time is more than the thread-count allocated in quartz.properties file. If such scenario occurs than processes don’t get thread to get fired and it result to misfires.

  1. Flows/Transactions move to queued / running state.

  2. Check webrunner logs and event logs.

  3. Check which event from the logs is causing the issue and has less polling frequency/stable time

  1. The lowest polling frequency should be kept as 2 minutes. If there are hundreds of events, then the ideal value would be 4 to 5 minutes for the polling frequency.

  2. File stable time should not be less than 1 minute.

The system sometimes throws Deadlock issue while running events

This deadlock issue typically occurs with Microsoft SQL Server when a large number of events are activated simultaneously.

 

  1. Check webrunner logs, event logs.

  2. Check which event from the logs is causing the issue

Add the following property to the quartz.properties file located in the <AdeptiaSuite_Installation_Directory>/ServerKernel/etc folder:

org.quartz.jobStore.acquireTriggersWithinLock = true

After adding this property, restart the "kernel" and "webrunner" to apply the changes.

Processes, which are triggered by a database update, sometimes stops working without any event log indicating activation.

  1. The MySQL server rejects connection establishment due to too many connections being utilized, leading to a MySQLNonTransientConnectionException.

  2. The maximum number of connections to the log database is utilized, resulting in dis-connectivity and failure to make entries in the log database.

  3. The Queue Processor on the Adeptia Server is disabled.

  4. Issues during service restart may be due to lingering jsl.exe or Java processes.

Check the logs and see the below error message comes in:
com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: Data source rejected establishment of connection, message from server: "Too many connections"
indicating all connections to MySQL were used up.

Additional log error:
java.lang.Exception: Error while retrieving log database connection
shows that max connections to the log database were utilized.
System configuration review indicates the Queue Processor is disabled.
No event log entries found during service restarts, suggesting potential lingering processes (jsl.exe).

  1. Increase the maximum number of connections allowed by the MySQL server to handle peak loads.

  2. Enable the Queue Processor in the Adeptia Server. Refer to the "Load Management" section of the admin guide found under the Help section of Adeptia Suite.

  3. If issues persist during service restarts, check the Task Manager for any lingering Java or jsl.exe processes and terminate them if necessary.

The process flow is not triggered for the calendar event , the log file shows the following issue.

ERROR [TestScheduler_Worker-11] Event com.adeptia.indigo.event.eventbroker.EventChannel.publish(EventChannel.java:91) - ||||Implementation|||||prod_oakley|Error in publishing Event[Error in triggering transaction. No Transaction is associated with event: Oakley_end_to_end_dataload_schedule]|

  1. You haven't associated the event with any Process Flow using Event Registry.

 

  1. The calendar Event and Event Registries were created from the different groups.

  1. Please confirm that you have bound the Event with Process Flow.

  1. Please make sure that all the activities are created from same user/group and activated by the admin

  1. Please confirm that you have bound the Event with Process Flow.

  1. Please make sure that all the activities are created from same user/group and activated by the admin

Issue activating JMS event

Error while activating JMS event in Adeptia.
Jar file is missing from the designated location.

Will see the below error message:
Error Message:

2020-09-27 22:40:35,416 INFO [qtp87228768-808] audittrail com.adeptia.indigo.storage.jdo.JdoEntityManager.update(JdoEntityManager.java:2605) - activityType="JMS Provider" category="storage" groupId="administrators" message="JMS Provider (JmsProvider): "RSA_FEEDBACK_FILE_INT_JMS_PROVIDER (JMS Provider to connect to INT active MQ.)" with ID : 010147064246158867069021000004 Updated Successfully".

 

 

Error while activating the activity: "RSA_FEEDBACK_FILE_JMS_EVENT(010147064246158806954974500063)".Error in activating JMS Event "RSA_FEEDBACK_FILE_JMS_EVENT(010147064246158806954974500063)": java.lang.NoClassDefFoundError: javax/management/j2ee/statistics/Stats

The attached jars file is missing, which is needed for JMS event need to be place at below location:-

ServerKernel\ext

Error in activating Database Event "UpdateSendEvent_DatabaseEvent";com.adeptia.indigo.services.ServiceException: Error in EventScheduler service : Error while creating database trigger job : Error in creating trigger for database Event service This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'

 

Here is the SQL trigger

DBTrigger_214 UPDATE au_groupdata BEGIN IF (new.DISPLAYSTATUS = 'SENT' and old.FLOWTYPE = 'OUTBOUND' and old.GS01 = 'AD' and old.PARTNERNAME = 'Adeptia') THEN INSERT INTO dbeventtriggertable(ID,STATUS) VALUES ( '123487687871234',concat('Query = WHERE ID =',''',http://new.ID ,''' )); END IF; END

This error is thrown by the MySQL database when a similar database trigger already exists within the database.

  1. Identify triggers that already exist on the table

SHOW TRIGGERS WHERE `table` = 'au_groupdata'

  1. If the existing trigger matches the one that is in the Database Event, drop the existing trigger from the table

DROP TRIGGER DBTrigger_214;

Note: If you'd like to backup the trigger before dropping it, you can run this statement

SHOW CREATE TRIGGER DBTrigger_214;

Then save the resulting script.

  1. Activate the Database Event within Adeptia

FTP Event not able to trigger the Process flow as Adeptia is unable to connect to that FTP server and the Kernel logs shows the below error.

com.jscape.inet.ftp.FtpException: sun.security.validator.ValidatorException: No trusted certificate found.

The Certificate used in the Keystore activity for that FTP event is invalid.

The Certificate used in the Keystore activity for that FTP event is invalid.

  1. Events > FTP

  2. Select the FTP Event encountering the issue

  3. Scroll down to Keystore Name and make a note of the value selected

  4. Service > Security > Keystore/Truststore

  5. Identify the Keystore activity from step 3

  6. Under the Action menu, select import certificate

  7. Upload the certificate provided

  8. Save

  9. Services > Source >FTP


10. Select the FTP Source activity associated with the process flow that the FTP Event triggers
11. The Keystore Name should be the same as the one selected in step 3
12. If there is a file available to test connectivity to in the source FTP directory, enter the file name and path in this FTP source activity
13. Click Test
14. The result of the test will confirm if the certificate has been updated properly.

Alert warning shows on the JMS event page after Event Pod restart

The alert icon is shown when the event pod is started and there is a connectivity issue from the JMS server :
JMS event goes in the retry phase and tries to connect with the JMS server based on the property values abpm.event.startup.activation.retryCount and abpm.event.startup.activation.retryInterval.

 

The warning sign would be disappear after the retry phase is completed, and mark the event as deactivated if it is not able to make connection with the JMS server or the connectivity is restored.

while turn on transaction received the below error.
Error in activating Event , Failure obtaining DB row lock SQL Syntax
"500 internal server error while activating any transaction
SQL Syntax error comes for the db row lock that corresponds to your MySQL server version for the right syntax to use near '(UPDLOCK ROWLOCK) WHERE SCHED_NAME= 'EventSchduler' AND LOCK_NAME = 'Trigger_A' at line 1'"

  1. This error comes when value.yaml has Quartz Lock Property according to MS SQL Server instead of MySql Server

  1. Check the MySQL database related properties and match their values in value.yaml from Adeptia documentation.

Check with MST teama and ask them to update the following property
Property: QUARTZ_SELECT_WITH_LOCK_SQL

Original value:

  • name: QUARTZ_SELECT_WITH_LOCK_SQL


value: >-
SELECT * FROM {0}LOCKS WITH (UPDLOCK,ROWLOCK) WHERE SCHED_NAME =
{1} AND LOCK_NAME = ?

Update Value:
SELECT * FROM {0}LOCKS WHERE SCHED_NAME = {1} AND LOCK_NAME = ?"