08-31-2014, 07:12 PM
We seem to have found the problem. It is due to a missing table that couldn't be created because of a collation difference between fields on different tables. There is a foreign key between _webforms_field table and _fields table. When a foreign key is set both fields must be exactly the same. In this case the _field table had a different collation.
@anilp78 please execute this SQL command and tell me the result:
this should return utf8_general_ci but I think it will return utf8_unicode_ci in your case and that would explain the problem.
I will create a ticket so we can look into this to see if we can fix it.
As a temporal solution for anybody running into this we can do two things:
1.- change the collation of the _field table and then create the missing table:
2.- Contact me, we have a coreBOS Updater changeset that changes your whole database to utf8_general_ci. You can run that and then create the table above.
@anilp78 please execute this SQL command and tell me the result:
Code:
SELECT DEFAULT_COLLATION_NAME FROM information_schema.SCHEMATA WHERE SCHEMA_NAME = 'your_database' LIMIT 1;
this should return utf8_general_ci but I think it will return utf8_unicode_ci in your case and that would explain the problem.
I will create a ticket so we can look into this to see if we can fix it.
As a temporal solution for anybody running into this we can do two things:
1.- change the collation of the _field table and then create the missing table:
Code:
CREATE TABLE `vtiger_webforms_field` (
`id` int(19) NOT NULL AUTO_INCREMENT,
`webformid` int(19) NOT NULL,
`fieldname` varchar(50) NOT NULL,
`neutralizedfield` varchar(50) NOT NULL,
`defaultvalue` varchar(200) DEFAULT NULL,
`required` int(10) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `webforms_webforms_field_idx` (`id`),
KEY `fk_1_vtiger_webforms_field` (`webformid`),
KEY `fk_2_vtiger_webforms_field` (`fieldname`),
CONSTRAINT `fk_1_vtiger_webforms_field` FOREIGN KEY (`webformid`) REFERENCES `vtiger_webforms` (`id`) ON DELETE CASCADE,
CONSTRAINT `fk_3_vtiger_webforms_field` FOREIGN KEY (`fieldname`) REFERENCES `vtiger_field` (`fieldname`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2.- Contact me, we have a coreBOS Updater changeset that changes your whole database to utf8_general_ci. You can run that and then create the table above.
Joe
TSolucio
TSolucio