Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
Problem:
MySQL Ambari Repository gives Key Too Long error messages for hostcomponentdesiredstate table.
Steps To Reproduce:
The comment in the Ambari-DDL-MySQL-CREATE.sql file indicates that the script was generated on a MySQL DB with UTF8 as the character set.
The default collation name for the DB is utf8_general_ci
I suspect that this is preventing me from creating the Ambari database schema and giving the message that the maximum key size is 1000 bytes.
If the VARCHAR fields use more than one byte per character then two VARCHAR(255) fields in the key is going to exceed 1000 bytes.
CREATE TABLE hostcomponentdesiredstate (
cluster_id BIGINT NOT NULL,
component_name VARCHAR(255) NOT NULL,
desired_stack_id BIGINT NOT NULL,
desired_state VARCHAR(255) NOT NULL,
host_id BIGINT NOT NULL,
service_name VARCHAR(255) NOT NULL,
admin_state VARCHAR(32),
maintenance_state VARCHAR(32) NOT NULL DEFAULT 'ACTIVE',
security_state VARCHAR(32) NOT NULL DEFAULT 'UNSECURED',
restart_required TINYINT(1) NOT NULL DEFAULT 0,
PRIMARY KEY (cluster_id, component_name, host_id, service_name)
);
Their is a work around of using MySQL 5.6 which is not the default for Cent OS 6. You also need to make a manual configuration change of innodb_large_prefix property. This is very ugly for installation process.
Attachments
Attachments
Issue Links
- links to