AnsweredAssumed Answered

Alfresco 3.3 + Tomcat 6 + MySQL 5.5 - sql errors

Question asked by sns on May 6, 2010
Latest reply on Jul 29, 2011 by janv

Having installed Alfresco on a fresh freebsd machine with Tomcat 6 and MySQL 5.5 have found couple of troubles starting this webapp.

Main problems (for the moment) is that, as far as I can understand, some scripts/sql dialect commands are outdated.

Here's sample of my log file:
16:12:26,664 ERROR [org.alfresco.repo.domain.schema.SchemaBootstrap] Statement execution failed:
   SQL:     create table JBPM_ACTION (
        ID_ bigint not null auto_increment,
        class char(1) not null,
        NAME_ varchar(255),
        ACTIONEXPRESSION_ varchar(255),
        ISASYNC_ bit,
        REFERENCEDACTION_ bigint,
        ACTIONDELEGATION_ bigint,
        EVENT_ bigint,
        PROCESSDEFINITION_ bigint,
        TIMERNAME_ varchar(255),
        DUEDATE_ varchar(255),
        REPEAT_ varchar(255),
        TRANSITIONNAME_ varchar(255),
        TIMERACTION_ bigint,
        EXPRESSION_ text,
        EVENTINDEX_ integer,
        EXCEPTIONHANDLER_ bigint,
        primary key (ID_)
    ) type=InnoDB
   Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'type=InnoDB' at line 22
   File: /usr/local/apache-tomcat-6.0/temp/Alfresco/AlfrescoSchema-MySQLInnoDBDialect-Update-61563.sql
   Line: 23
16:12:26,668 ERROR [org.alfresco.repo.domain.schema.SchemaBootstrap] Schema auto-update failed

As of 5.1 and higher versions of MySQL - 'type' definidion for table types is no more supported - it must be 'engine' instead. I have found all occurences of this mistake in static sql scripts, but this one is being build on the fly and I do not know which way to look to fix it.

On the other hand - if I disable schema auto update, as mentioned in some other post, some needed table is not created (during auto update?) and is not available. Here's a cut from my log file:
16:55:53,613 ERROR [org.springframework.web.context.ContextLoader] Context initialization failed
org.hibernate.exception.SQLGrammarException: could not load an entity: [org.alfresco.repo.attributes.GlobalAttributeEntryImpl#.avm_lock_table]
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'alfresco.alf_global_attributes' doesn't exist

Whoever will point me to the place in code I could fix it?

p.s. I think this should be fixed. MySQL is way too far from 5.0 now.

Thanks in advance!