[ https://forge.continuent.org/jira/browse/SEQUOIA-731?page=all ] Ralph Hannus closed SEQUOIA-731: --------------------------------
This has been tested. > The list of table references used for locking is incomplete > ----------------------------------------------------------- > > Key: SEQUOIA-731 > URL: https://forge.continuent.org/jira/browse/SEQUOIA-731 > Project: Sequoia > Type: Bug > Components: Core > Versions: Sequoia 2.9 > Reporter: Ralph Hannus > Assignee: Ralph Hannus > Fix For: Sequoia 2.10 > > > The list of table references used for locking is incomplete. Given these > tables below: > create table parent (id int primary key, name varchar(100)) > create table child (id int primary key, parent_id int references parent(id), > name varchar(1000)) > Sequoia will lock child whenever parent is updated, but parent will not be > locked when child is updated. This can lead to distributed deadlocks between > sequoia and the backend. On an insert or update to child, a database will > take a shared lock on the corresponding parent in order to ensure that the > parent is not deleted or modified before the child update is committed. > When the database schema is loaded, DatabaseMetaData.getExportedKeys() is > used to determine the list of dependent tables for each table. > DatabaseMetaData.getImportedKeys() should also be used to build the list. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: https://forge.continuent.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira _______________________________________________ Sequoia mailing list [email protected] https://forge.continuent.org/mailman/listinfo/sequoia
