G&L Email Delivery Fails with ORA-01407: Cannot Update T_EMAIL_LOG to NULL
a month ago
Article Number
000073901
Applies To
  • Product: RSA Governance & Lifecycle
  • Version: 8.x
  • Component: Email Sender Service, T_EMAIL_LOG database table
  • Database: Oracle

 

Issue

System-generated emails from RSA Governance & Lifecycle stop being delivered entirely, while test emails sent manually continue to succeed. This issue may begin as a significant delay in email delivery (several hours) before progressing to a complete failure.

Observable symptoms include:

  • All system-generated emails (requests, workflows, rules, and similar) are not being delivered to recipients.
  • Manually triggered test emails are delivered successfully.
  • The following errors appear consistently on both application server nodes in aveksaServer.log (located at $AVEKSA_HOME/logs/aveksaServer.log):
    ORA-01407: cannot update ("AVUSER"."T_EMAIL_LOG"."MESSAGE_DATA") to NULL
    HHH000346: Error during managed flush [org.hibernate.exception.ConstraintViolationException: could not execute statement]
    Error getting Emails to send from EmailLogObjectStore
    
    

NOTE: These errors are logged by the EmailSenderServiceProvider thread and will repeat continuously until the underlying database issue is resolved.

Cause

One or more email records with no recipients have accumulated in the T_EMAIL_LOG database table, causing the Email Sender Service to stall and blocking all subsequent email delivery.

When RSA Governance & Lifecycle attempts to process these recipient-less emails, the Email Sender Service tries to update the MESSAGE_DATA column to NULL as part of its normal processing flow. However, the MESSAGE_DATA column in the T_EMAIL_LOG table has a NOT NULL constraint enforced at the Oracle database level. This constraint violation triggers ORA-01407, which causes the entire email processing queue to stall — preventing all system-generated emails from being delivered until the affected records are resolved.

This commonly occurs when a workflow, rule, or system process generates an email notification but fails to populate a recipient address before the email record is committed to the database.

Resolution

Resolution

CAUTION: Do NOT attempt to modify the T_EMAIL_LOG table directly without RSA Support guidance. Incorrect database modifications can cause permanent data loss or further disrupt email delivery.

  1. Log in to the Oracle database as a user with SELECT access to the T_EMAIL_LOG table (e.g., using sqlplus as the AVUSER database user or your Oracle DBA account):
    sqlplus avuser@<your_db_service>
    
    
  2. Run the following diagnostic query to identify email records with no recipients that are blocking the email queue:
    SELECT *
    FROM t_email_log
    WHERE to_email_cnt = 0
      AND cc_email_cnt = 0
      AND bcc_email_cnt = 0
      AND completed_time IS NULL;
    
    
  3. Review the query results:
    • If the query returns one or more rows, the affected email records have been identified. Proceed to Step 4.
    • If the query returns zero rows, this is not the cause of the issue. Contact RSA Support with a copy of the aveksaServer.log for further investigation.
  4. Export the query results and contact RSA Support with the following information:
    • The full query output.
    • A copy of the relevant aveksaServer.log entries showing the ORA-01407 error.
    • Confirmation of your RSA Governance & Lifecycle version (8.0.0).

    RSA Support will validate the affected records, take a backup, and apply a corrective database update to mark the recipient-less email records as failed so that normal email processing can resume.

Verification: After RSA Support has applied the corrective update, monitor the aveksaServer.log for 5–10 minutes and confirm:

  • The ORA-01407 errors no longer appear.
  • System-generated emails (requests, workflows, rules) are being delivered to recipients.
  • A test email sent via the RSA Governance & Lifecycle UI is also successfully delivered.