[ https://issues.apache.org/jira/browse/CASSANDRA-10932?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sylvain Lebresne resolved CASSANDRA-10932. ------------------------------------------ Resolution: Fixed Assignee: Sylvain Lebresne Fix Version/s: (was: 3.0.x) (was: 3.x) 3.3 3.0.3 The test is clearly bogus, and we do want the 8 notifications that are sent, so I modified the test and committed (207a1e495a745f525b923c8276fa049e59bf1777 in the dtests). As to why the test was expecting 14 notifications, I'm not sure, but this could be related to CASSANDRA-9646. It appears on some version we did sent duplicate notification and the test might have been written when that was the case. And I also didn't found a ticket related to fixing this but it's apparently fixed at least on 3.0 (that particular test doesn't run into 2.2). The CI history also seems to suggest the test has never ran successfully there so it's hard to pinpoint a particular fix. Anyway, the test is fixed so closing and we can verify whether those duplicate notifications still happen in 2.2 in CASSANDRA-9646. > pushed_notifications_test.py schema_changes_test is failing > ----------------------------------------------------------- > > Key: CASSANDRA-10932 > URL: https://issues.apache.org/jira/browse/CASSANDRA-10932 > Project: Cassandra > Issue Type: Sub-task > Reporter: Philip Thompson > Assignee: Sylvain Lebresne > Fix For: 3.0.3, 3.3 > > > {{pushed_notifications_test.py:TestPushedNotifications.schema_changes_test}} > is failing on HEAD of cassandra-3.0. It may be simply a problem with the test > assertions, so someone just needs to double check if the schema change > notifications pushed to the driver are correct. > In actuality, the driver gets 8 notifications, listed in the debug output of > the test failure: > {code} > ====================================================================== > FAIL: schema_changes_test (pushed_notifications_test.TestPushedNotifications) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/Users/philipthompson/cstar/cassandra-dtest/tools.py", line 253, in > wrapped > f(obj) > File > "/Users/philipthompson/cstar/cassandra-dtest/pushed_notifications_test.py", > line 244, in schema_changes_test > self.assertEquals(14, len(notifications)) > AssertionError: 14 != 8 > -------------------- >> begin captured logging << -------------------- > dtest: DEBUG: cluster ccm directory: > /var/folders/v3/z4wf_34n1q506_xjdy49gb780000gn/T/dtest-93xMe2 > dtest: DEBUG: Source 127.0.0.2 sent {'keyspace': u'ks', 'change_type': > u'CREATED', 'target_type': uCorrect typo in MV creation query > 'KEYSPACE'} > dtest: DEBUG: Source 127.0.0.2 sent {'keyspace': u'ks', 'change_type': > u'CREATED', 'target_type': u'TABLE', u'table': u't'} > dtest: DEBUG: Source 127.0.0.2 sent {'keyspace': u'ks', 'change_type': > u'UPDATED', 'target_type': u'TABLE', u'table': u't'} > dtest: DEBUG: Source 127.0.0.2 sent {'keyspace': u'ks', 'change_type': > u'CREATED', 'target_type': u'TABLE', u'table': u'mv'} > dtest: DEBUG: Source 127.0.0.2 sent {'keyspace': u'ks', 'change_type': > u'UPDATED', 'target_type': u'TABLE', u'table': u'mv'} > dtest: DEBUG: Source 127.0.0.2 sent {'keyspace': u'ks', 'change_type': > u'DROPPED', 'target_type': u'TABLE', u'table': u'mv'} > dtest: DEBUG: Source 127.0.0.2 sent {'keyspace': u'ks', 'change_type': > u'DROPPED', 'target_type': u'TABLE', u'table': u't'} > dtest: DEBUG: Source 127.0.0.2 sent {'keyspace': u'ks', 'change_type': > u'DROPPED', 'target_type': u'KEYSPACE'} > dtest: DEBUG: Waiting for notifications from 127.0.0.2 > --------------------- >> end captured logging << --------------------- > {code} > The test has been expecting the following 14, though: > {code} > self.assertDictContainsSubset({'change_type': u'CREATED', 'target_type': > u'KEYSPACE'}, notifications[0]) > self.assertDictContainsSubset({'change_type': u'UPDATED', > 'target_type': u'KEYSPACE'}, notifications[1]) > self.assertDictContainsSubset({'change_type': u'CREATED', > 'target_type': u'TABLE', u'table': u't'}, notifications[2]) > self.assertDictContainsSubset({'change_type': u'UPDATED', > 'target_type': u'KEYSPACE'}, notifications[3]) > self.assertDictContainsSubset({'change_type': u'UPDATED', > 'target_type': u'TABLE', u'table': u't'}, notifications[4]) > self.assertDictContainsSubset({'change_type': u'UPDATED', > 'target_type': u'KEYSPACE'}, notifications[5]) > self.assertDictContainsSubset({'change_type': u'CREATED', > 'target_type': u'TABLE', u'table': u'mv'}, notifications[6]) > self.assertDictContainsSubset({'change_type': u'UPDATED', > 'target_type': u'KEYSPACE'}, notifications[7]) > self.assertDictContainsSubset({'change_type': u'UPDATED', > 'target_type': u'TABLE', u'table': u'mv'}, notifications[8]) > self.assertDictContainsSubset({'change_type': u'UPDATED', > 'target_type': u'KEYSPACE'}, notifications[9]) > self.assertDictContainsSubset({'change_type': u'DROPPED', > 'target_type': u'TABLE', u'table': u'mv'}, notifications[10]) > self.assertDictContainsSubset({'change_type': u'UPDATED', > 'target_type': u'KEYSPACE'}, notifications[11]) > self.assertDictContainsSubset({'change_type': u'DROPPED', > 'target_type': u'TABLE', u'table': u't'}, notifications[12]) > self.assertDictContainsSubset({'change_type': u'DROPPED', > 'target_type': u'KEYSPACE'}, notifications[13]) > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)