atkphpframework / achievo

[ARCHIVED] Achievo is a web-based Business Support Services (BSS) application for organizations.
Other
18 stars 20 forks source link

CRM does not install correctly in Achievo-1.4.5 with MySQL 5.5+ #1

Open dalers opened 12 years ago

dalers commented 12 years ago

When installing achievo-1.4.5 using the Setup menu (logging in as administrator), Setup will report that the CRM module has been correctly installed, but accessing Setup again will show CRM must still be installed.

This occurs only when MySQL uses Innodb tables by default (as of MySQL 5.5), and does not occur with older versions of MySQL that use MyISAM tables by default (or presumably if MySQL 5.5+ is configured to use MyISAM tables by default).

dalers commented 12 years ago

After removing some modules (commenting in modules/config.module.inc) and "installing" a new database, it seems the last module to be installed (i.e. the last module listed in config.module.inc) is always reported in Setup as needing to be installed.

A workaround for this issue is to change all the table types to MyISAM after "installing" a new Achievo database using MySQL commands (e.g. "ALTER TABLE profile ENGINE = MYISAM;"), or a program like phpMyAdmin, and then "running Setup" on more time. I haven't investigated but suspect the MySQL driver needs updating now that InnoDB tables are the default in MySQL (Achievo was released well before MyISAM tables became the default).

dalers commented 12 years ago

Commands to change default achievo-1.4.5 database to MyISAM tables:

# Convert new Achievo 1.4.5 database tables to MYISAM
# Must be run as MySQL root user

ALTER TABLE `accessright` ENGINE = MYISAM;
ALTER TABLE `activity` ENGINE = MYISAM;
ALTER TABLE `atk_searchcriteria` ENGINE = MYISAM;
ALTER TABLE `contract` ENGINE = MYISAM;
ALTER TABLE `contracttype` ENGINE = MYISAM;
ALTER TABLE `crm_campaign` ENGINE = MYISAM;
ALTER TABLE `crm_campaign_status` ENGINE = MYISAM;
ALTER TABLE `crm_campaign_type` ENGINE = MYISAM;
ALTER TABLE `crm_eventlog` ENGINE = MYISAM;
ALTER TABLE `crm_former_name` ENGINE = MYISAM;
ALTER TABLE `crm_industry` ENGINE = MYISAM;
ALTER TABLE `crm_lead` ENGINE = MYISAM;
ALTER TABLE `crm_organization_relation` ENGINE = MYISAM;
ALTER TABLE `crm_organization_status` ENGINE = MYISAM;
ALTER TABLE `crm_rate` ENGINE = MYISAM;
ALTER TABLE `crm_relation_type` ENGINE = MYISAM;
ALTER TABLE `crm_source` ENGINE = MYISAM;
ALTER TABLE `db_sequence` ENGINE = MYISAM;
ALTER TABLE `deliverable` ENGINE = MYISAM;
ALTER TABLE `dependency` ENGINE = MYISAM;
ALTER TABLE `docmanager_document` ENGINE = MYISAM;
ALTER TABLE `docmanager_documenttype` ENGINE = MYISAM;
ALTER TABLE `docmanager_prjtpl_dt` ENGINE = MYISAM;
ALTER TABLE `email_template` ENGINE = MYISAM;
ALTER TABLE `employeerole` ENGINE = MYISAM;
ALTER TABLE `employee_department` ENGINE = MYISAM;
ALTER TABLE `functionlevel` ENGINE = MYISAM;
# ALTER TABLE `hours` ENGINE = MYISAM;
ALTER TABLE `hoursbase` ENGINE = MYISAM;
ALTER TABLE `hours_lock` ENGINE = MYISAM;
ALTER TABLE `mastergantt_colorconfig` ENGINE = MYISAM;
ALTER TABLE `organization` ENGINE = MYISAM;
ALTER TABLE `overtime_balance` ENGINE = MYISAM;
ALTER TABLE `person` ENGINE = MYISAM;
ALTER TABLE `phase` ENGINE = MYISAM;
ALTER TABLE `phase_activity` ENGINE = MYISAM;
ALTER TABLE `profile` ENGINE = MYISAM;
ALTER TABLE `project` ENGINE = MYISAM;
ALTER TABLE `project_category` ENGINE = MYISAM;
ALTER TABLE `project_notes` ENGINE = MYISAM;
ALTER TABLE `project_person` ENGINE = MYISAM;
ALTER TABLE `project_phaseplanning` ENGINE = MYISAM;
ALTER TABLE `quotation_payment` ENGINE = MYISAM;
ALTER TABLE `quotation_quotation` ENGINE = MYISAM;
ALTER TABLE `role` ENGINE = MYISAM;
ALTER TABLE `scheduler_alarms` ENGINE = MYISAM;
ALTER TABLE `scheduler_attendees` ENGINE = MYISAM;
ALTER TABLE `scheduler_category` ENGINE = MYISAM;
ALTER TABLE `scheduler_cyclus` ENGINE = MYISAM;
ALTER TABLE `scheduler_cyclus_not` ENGINE = MYISAM;
ALTER TABLE `scheduler_dates` ENGINE = MYISAM;
ALTER TABLE `scheduler_group` ENGINE = MYISAM;
ALTER TABLE `scheduler_group_member` ENGINE = MYISAM;
ALTER TABLE `scheduler_holidays` ENGINE = MYISAM;
ALTER TABLE `scheduler_notes` ENGINE = MYISAM;
ALTER TABLE `scheduler_scheduler` ENGINE = MYISAM;
ALTER TABLE `scheduler_userassistants` ENGINE = MYISAM;
ALTER TABLE `scheduler_userpreferences` ENGINE = MYISAM;
ALTER TABLE `title` ENGINE = MYISAM;
ALTER TABLE `todo` ENGINE = MYISAM;
ALTER TABLE `todo_history` ENGINE = MYISAM;
ALTER TABLE `tpl_dependency` ENGINE = MYISAM;
ALTER TABLE `tpl_phase` ENGINE = MYISAM;
ALTER TABLE `tpl_phase_activity` ENGINE = MYISAM;
ALTER TABLE `tpl_project` ENGINE = MYISAM;
ALTER TABLE `tpl_project_phase` ENGINE = MYISAM;
ALTER TABLE `usercontract` ENGINE = MYISAM;
ALTER TABLE `userpimitems` ENGINE = MYISAM;
ALTER TABLE `versioninfo` ENGINE = MYISAM;
ALTER TABLE `workperiod` ENGINE = MYISAM;
#
dalers commented 12 years ago

Sorry, closed by accident (don't know how though.....)

dalers commented 12 years ago

Got it, "Comment & Close" closes the issue (I thought it just closed the comment)

klaaspeter commented 11 years ago

I will check if i can fix it with some code it should not be that hard, for now you option is a nice solution :)

perryfaro commented 10 years ago

@dalers Is this still relevant?

dalers commented 10 years ago

I have started testing the develop branch and the symptom is still there.

perryfaro commented 10 years ago

Ok, thanks I will take a look at it.