[ https://forge.continuent.org/jira/browse/SEQUOIA-1128?page=comments#action_15281 ]
James Loope commented on SEQUOIA-1128: -------------------------------------- I have a better idea of what exactly is going on in my circumstance: I have 2 controllers, each with one mysql 5 backend. The front end app is Liferay 5.1. Liferay on occasion likes to try and INSERT a bit of data that has a duplicate key: Thread for backend 'mercury-prod' with RAIDb level:1 failed (Duplicate entry '36733-11125' for key 1) This is perfectly fine.. Most of the time it simply fails on each backend, and continues on with it's business. But every once in a while this happens: 2009-02-10 20:53:39,639 ERROR controller.RequestManager.caloris Request INSERT INTO Users_UserGroups (userGroupI... failed on all local backends but succeeded on other controllers. Disabling all local backends. on BOTH controllers, simultaneously. Both controllers fail the INSERT, but believe that the other has succeeded and then shut themselves down. This is less than ideal and causes much gnashing of teeth. Any ideas as to why both controllers could believe the other to be succeeding? > 2 concurrent statements that try to create the same table in parallel can > disable the whole vdb > ----------------------------------------------------------------------------------------------- > > Key: SEQUOIA-1128 > URL: https://forge.continuent.org/jira/browse/SEQUOIA-1128 > Project: Sequoia > Type: Bug > Components: Core > Versions: sequoia 2.10.10 > Reporter: Stephane Giron > Assignee: Stephane Giron > Priority: Blocker > Fix For: sequoia 2.10.11 > > > Simple CREATE TABLE statements can run out of order (as for example, create > table test (i integer)) > Generally speaking, it should not be a problem, except if 2 threads try to > create the same table at the same time. > This would result disabling the whole vdb as shown by the following log > messages : > Controller 1 : > 2008-08-14 00:29:40,170 INFO controller.loadbalancer.RAIDb1 write request 2 > failed: Backend DB1 - BackendWorkerThread for backend 'c1b1' with RAIDb > level:1 failed (Table 'test' already exists) > 2008-08-14 00:29:40,179 INFO controller.RequestManager.DB1 Request 2 failed > on controller Member(address=node01/172.16.230.11:4444, > uid=DB1-20081010152552449) (java.sql.SQLException: write request 2 > failed:Backend DB1 - BackendWorkerThread for backend 'c1b1' with RAIDb > level:1 failed (Table 'test' already exists)) > 2008-08-14 00:29:40,192 ERROR controller.RequestManager.DB1 Request create > table test (i integer) /* 2 *// failed on all local backends but succeeded on > other controllers. Disabling all local backends. > 2008-08-14 00:29:40,256 INFO controller.RequestManager.DB1 Setting new > virtual database schema. > 2008-08-14 00:29:40,260 INFO sequoia.controller.connection 1 connections > freed on > "jdbc:mysql://node01:3306/db1?zeroDateTimeBehavior=convertToNull&jdbcCompliantTruncation=false&tinyInt1isBit=false&allowMultiQueries=true&generateSimpleParameterMetadata=true" > 2008-08-14 00:29:40,718 INFO controller.RequestManager.DB1 Backend c1b1 is > now disabled > 2008-08-14 00:29:40,753 INFO controller.RequestManager.DB1 Request 1 failed > on controller Member(address=node02/172.16.230.12:5555, > uid=DB1-20081010152552449) (java.sql.SQLException: write request 1 > failed:Backend DB1 - BackendWorkerThread for backend 'c2b1' with RAIDb > level:1 failed (Table 'test' already exists)) > 2008-08-14 00:29:40,779 INFO controller.virtualdatabase.DB1 Backend c2b1 > disabled on controller Member(address=node02/172.16.230.12:5555, > uid=DB1-20081010152552449) > Controller 2 : > 2008-10-10 15:56:42,209 INFO controller.loadbalancer.RAIDb1 write request 1 > failed: > Backend DB1 - BackendWorkerThread for backend 'c2b1' with RAIDb level:1 > failed (Table 'test' already exists) > 2008-10-10 15:56:42,483 INFO controller.virtualdatabase.DB1 Backend c1b1 > disabled on controller Member(address=node01/172.16.230.11:4444, > uid=DB1-20081010152552449) > 2008-10-10 15:56:42,889 ERROR controller.RequestManager.DB1 Request create > table test (i integer) /* 1 *// failed on all local backends but succeeded on > other controllers. Disabling all local backends. > 2008-10-10 15:56:42,893 INFO controller.RequestManager.DB1 Setting new > virtual database schema. > 2008-10-10 15:56:42,894 INFO sequoia.controller.connection 1 connections > freed on > "jdbc:mysql://node02:3306/db1?zeroDateTimeBehavior=convertToNull&jdbcCompliantTruncation=false&tinyInt1isBit=false&allowMultiQueries=true&generateSimpleParameterMetadata=true" > 2008-10-10 15:56:43,271 INFO controller.RequestManager.DB1 Backend c2b1 is > now disabled -- 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
