Uploaded image for project: 'Application Server 3  4  5 and 6'
  1. Application Server 3 4 5 and 6
  2. JBAS-1098

Foreign key violation during cascade delete

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Do
    • Major
    • No Release
    • JBossAS-3.2.6 Final
    • CMP service
    • None

    Description

      SourceForge Submitter: sflexus .
      JBoss 3.2.5, JDK 1.4.2_04, Linux.

      I have CMP Entity Customer and CMP entity Album with
      the following relationships:
      1) 1 Customer has Many Albums
      2) 1 Customer has 1 Album "Inbox"
      3) 1 Customer has 1 Album "Private"
      4) 1 Customer has 1 Album "Recycle Bin"

      So basically there are 3 Albums each of which has double
      relationship to Customer, both 1-1 and 1-M

      Relationship (1) has cascade-delete on Album side, so if
      customer is deleted, all his albums should be deleted.
      Relationships (2)-(4) has NO cascade-delete setting,
      since (1) should be enough, as it references ALL
      customer's albums, including those referenced in (2)-(4).

      There are other entities related to Customer in the
      application, but they seem non-important (at first sight).

      If I try to remove Customer instance, I get foreigh key
      violation in the database. All foreign keys were created
      by JBoss itself. I have attached TRACE-level log. What
      happens is that all 3 albums (inbox, private and recycle
      bin, their IDs are 162, 163 and 164) are scheduled for
      cascade delete, but only the one with ID=164 is updated
      to set its CMR column to NULL before issuing DELETE
      FROM Customer SQL. The foreign key fk_album_owner
      which is being violated corresponds to relation (1) "1
      Customer has Many Albums".

      The interesting thing is that if I redeploy the application
      and issue remove again, it completes normally! Looks like
      it depends on some cache state.

      Two files are attached. First one demonstrates foreign
      key violation, second one demonstrates success deletion
      after application is redeployed.

      Attachments

        Activity

          People

            olubyans@redhat.com Alexey Loubyansky
            sourceforge-user SourceForge legacy user (Inactive)
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: