When I run "ceilometer event-list", I got something like below:
DEBUG (client) Request returned failure status: 500
Traceback (most recent call last):
File "/home/daidv/Envs/ocata/bin/ceilometer", line 11, in <module>
sys.exit(main())
File "/home/daidv/Envs/ocata/local/lib/python2.7/site-packages/ceilometerclient/shell.py", line 280, in main
CeilometerShell().main(args)
File "/home/daidv/Envs/ocata/local/lib/python2.7/site-packages/ceilometerclient/shell.py", line 229, in main
args.func(client, args)
File "/home/daidv/Envs/ocata/local/lib/python2.7/site-packages/ceilometerclient/v2/shell.py", line 1141, in do_event_list
limit=args.limit)
File "/home/daidv/Envs/ocata/local/lib/python2.7/site-packages/ceilometerclient/v2/events.py", line 35, in list
return self._list(options.build_url(path, q, params))
File "/home/daidv/Envs/ocata/local/lib/python2.7/site-packages/ceilometerclient/common/base.py", line 63, in _list
resp = self.api.get(url)
File "/home/daidv/Envs/ocata/local/lib/python2.7/site-packages/ceilometerclient/apiclient/client.py", line 355, in get
return self.client_request("GET", url, **kwargs)
File "/home/daidv/Envs/ocata/local/lib/python2.7/site-packages/ceilometerclient/apiclient/client.py", line 345, in client_request
self, method, url, **kwargs)
File "/home/daidv/Envs/ocata/local/lib/python2.7/site-packages/ceilometerclient/apiclient/client.py", line 261, in client_request
method, self.concat_url(endpoint, url), **kwargs)
File "/home/daidv/Envs/ocata/local/lib/python2.7/site-packages/ceilometerclient/apiclient/client.py", line 201, in request
raise exceptions.from_response(resp, method, url)
ceilometerclient.apiclient.exceptions.InternalServerError: (pymysql.err.InternalError) (1271, u"Illegal mix of collations for operation 'UNION'") [SQL: u'SELECT anon_1.trait_datetime_event_id AS anon_1_trait_datetime_event_id, anon_1.trait_datetime_key AS anon_1_trait_datetime_key, anon_1.trait_datetime_value AS anon_1_trait_datetime_value, anon_1.anon_2 AS anon_1_anon_2, anon_1.anon_3 AS anon_1_anon_3, anon_1.anon_4 AS anon_1_anon_4 \nFROM (SELECT trait_datetime.event_id AS trait_datetime_event_id, trait_datetime.`key` AS trait_datetime_key, trait_datetime.value AS trait_datetime_value, CAST(NULL AS SIGNED INTEGER) AS anon_2, NULL AS anon_3, CAST(NULL AS CHAR(255)) AS anon_4 \nFROM trait_datetime \nWHERE EXISTS (SELECT * \nFROM (SELECT event.id AS id \nFROM event INNER JOIN event_type ON event_type.id = event.event_type_id \nWHERE EXISTS (SELECT * \nFROM (SELECT anon_7.trait_text_event_id AS trait_text_event_id \nFROM (SELECT trait_text.event_id AS trait_text_event_id \nFROM trait_text \nWHERE NOT (EXISTS (SELECT * \nFROM (SELECT trait_text.event_id AS event_id \nFROM trait_text \nWHERE trait_text.`key` = %(key_1)s) AS anon_8 \nWHERE trait_text.event_id = anon_8.event_id)) UNION SELECT trait_text.event_id AS trait_text_event_id \nFROM trait_text, event \nWHERE trait_text.`key` = %(key_2)s AND trait_text.value = %(value_1)s AND event.id = trait_text.event_id) AS anon_7) AS anon_6 \nWHERE event.id = anon_6.trait_text_event_id) ORDER BY event.`generated` ASC, event.message_id ASC \n LIMIT %(param_1)s) AS anon_5 \nWHERE trait_datetime.event_id = anon_5.id) UNION ALL SELECT trait_int.event_id AS trait_int_event_id, trait_int.`key` AS trait_int_key, NULL AS anon_9, trait_int.value AS trait_int_value, NULL AS anon_10, NULL AS anon_11 \nFROM trait_int \nWHERE EXISTS (SELECT * \nFROM (SELECT event.id AS id \nFROM event INNER JOIN event_type ON event_type.id = event.event_type_id \nWHERE EXISTS (SELECT * \nFROM (SELECT anon_7.trait_text_event_id AS trait_text_event_id \nFROM (SELECT trait_text.event_id AS trait_text_event_id \nFROM trait_text \nWHERE NOT (EXISTS (SELECT * \nFROM (SELECT trait_text.event_id AS event_id \nFROM trait_text \nWHERE trait_text.`key` = %(key_1)s) AS anon_8 \nWHERE trait_text.event_id = anon_8.event_id)) UNION SELECT trait_text.event_id AS trait_text_event_id \nFROM trait_text, event \nWHERE trait_text.`key` = %(key_2)s AND trait_text.value = %(value_1)s AND event.id = trait_text.event_id) AS anon_7) AS anon_6 \nWHERE event.id = anon_6.trait_text_event_id) ORDER BY event.`generated` ASC, event.message_id ASC \n LIMIT %(param_2)s) AS anon_12 \nWHERE trait_int.event_id = anon_12.id) UNION ALL SELECT trait_float.event_id AS trait_float_event_id, trait_float.`key` AS trait_float_key, NULL AS anon_13, NULL AS anon_14, trait_float.value AS trait_float_value, NULL AS anon_15 \nFROM trait_float \nWHERE EXISTS (SELECT * \nFROM (SELECT event.id AS id \nFROM event INNER JOIN event_type ON event_type.id = event.event_type_id \nWHERE EXISTS (SELECT * \nFROM (SELECT anon_7.trait_text_event_id AS trait_text_event_id \nFROM (SELECT trait_text.event_id AS trait_text_event_id \nFROM trait_text \nWHERE NOT (EXISTS (SELECT * \nFROM (SELECT trait_text.event_id AS event_id \nFROM trait_text \nWHERE trait_text.`key` = %(key_1)s) AS anon_8 \nWHERE trait_text.event_id = anon_8.event_id)) UNION SELECT trait_text.event_id AS trait_text_event_id \nFROM trait_text, event \nWHERE trait_text.`key` = %(key_2)s AND trait_text.value = %(value_1)s AND event.id = trait_text.event_id) AS anon_7) AS anon_6 \nWHERE event.id = anon_6.trait_text_event_id) ORDER BY event.`generated` ASC, event.message_id ASC \n LIMIT %(param_3)s) AS anon_16 \nWHERE trait_float.event_id = anon_16.id) UNION ALL SELECT trait_text.event_id AS trait_text_event_id, trait_text.`key` AS trait_text_key, NULL AS anon_17, NULL AS anon_18, NULL AS anon_19, trait_text.value AS trait_text_value \nFROM trait_text \nWHERE EXISTS (SELECT * \nFROM (SELECT event.id AS id \nFROM event INNER JOIN event_type ON event_type.id = event.event_type_id \nWHERE EXISTS (SELECT * \nFROM (SELECT anon_7.trait_text_event_id AS trait_text_event_id \nFROM (SELECT trait_text.event_id AS trait_text_event_id \nFROM trait_text \nWHERE NOT (EXISTS (SELECT * \nFROM (SELECT trait_text.event_id AS event_id \nFROM trait_text \nWHERE trait_text.`key` = %(key_1)s) AS anon_8 \nWHERE trait_text.event_id = anon_8.event_id)) UNION SELECT trait_text.event_id AS trait_text_event_id \nFROM trait_text, event \nWHERE trait_text.`key` = %(key_2)s AND trait_text.value = %(value_1)s AND event.id = trait_text.event_id) AS anon_7) AS anon_6 \nWHERE event.id = anon_6.trait_text_event_id) ORDER BY event.`generated` ASC, event.message_id ASC \n LIMIT %(param_4)s) AS anon_20 \nWHERE trait_text.event_id = anon_20.id)) AS anon_1 ORDER BY anon_1.trait_datetime_key'] [parameters: {u'param_4': 100, u'value_1': u'f71dc98ca4c64912b0f11dd44dd31ad9', u'param_3': 100, u'param_2': 100, u'key_1': 'project_id', u'param_1': 100, u'key_2': 'project_id'}] (HTTP 500) (Request-ID: req-9ed9ec06-ef52-42d7-b313-86863e002e06)
I have used temporary way to fix it via set utf8 collation for all of tables.
For instance: ALTER TABLE trait_text CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
I meet the same issue.and I fix it by @Dai Dang Van's way