Uploaded image for project: 'Derby'
  1. Derby
  2. DERBY-7167

ERROR 54038: Maximum depth of nested triggers was exceeded

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 10.17.1.0
    • None
    • SQL
    • None
    • Windows 11
      Java 21.0.2
    • Normal
    • Newcomer, Repro attached
    • Seen in production, Wrong query result

    Description

      I have a single table which is referenced by more than 16 other tables. 
      These 16+ children tables all have "on delete set null" foreign key 
      constraints and update triggers which log changes to a change log table. 
      When I try to delete from the root table I am running into a "ERROR 
      54038: Maximum depth of nested triggers was exceeded".

       

      I've attached a script that reproduces the issue.

       

      Response from posting the question on the Mailing List:

      https://lists.apache.org/thread/s4h5lvp9frmt48vwt4fvpn2wgczry3pr

      At first glance, it does not appear that there is any recursion involved 
      here. However, as implemented, preceding triggers are still active when 
      later triggers begin executing. This causes the active trigger stack to 
      exceed its limited size. I am not an expert in this part of the code and 
      I don't know how well Derby's trigger stack models the behavior of the 
      SQL Standard's understanding of the trigger stack. Some of these 
      complexities are discussed at 
      _https://issues.apache.org/jira/browse/DERBY-1261_

       

      Attachments

        1. derby_issue_sql.txt
          4 kB
          Emily Gouge

        Issue Links

          Activity

            People

              Unassigned Unassigned
              egouge Emily Gouge
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated: