Hi,

When installing ManfoldCF with MySQL database, initialize.sh scripts fails with 
the following exception.

I found out that MySQL tables should be InnoDB to overcome this constraint. For 
a workaround I changed the storage engine used by default via
"set GLOBAL storage_engine='InnoDb';"
 
After this change,  initialize.sh successfully initialized database and 
registered all connectors.

What is the preferred way in this scenario 

1) Document (Configuring a MySQL database) to execute "set GLOBAL 
storage_engine='InnoDb';" before initialize.sh when using MySQL

2) Modify org.apache.manifoldcf.core.database.DBInterfaceMySQL#performCreate 
method to specify "ENGINE=InnoDB;" when creating table(s).

Also I found a small typo (datastyle => datestyle) at how to build and deploy 
page. What is the preferred way to correct these kind of small typos? Direct 
commit? Jira?

Thanks,
Ahmet

org.apache.manifoldcf.core.interfaces.ManifoldCFException: Database exception: 
SQLException doing query (42000): Specified key was too long; max key length is 
1000 bytes
at 
org.apache.manifoldcf.core.database.Database.executeViaThread(Database.java:717)
at 
org.apache.manifoldcf.core.database.Database.executeUncachedQuery(Database.java:745)
at 
org.apache.manifoldcf.core.database.Database$QueryCacheExecutor.create(Database.java:1430)
at 
org.apache.manifoldcf.core.cachemanager.CacheManager.findObjectsAndExecute(CacheManager.java:144)
at org.apache.manifoldcf.core.database.Database.executeQuery(Database.java:186)
at 
org.apache.manifoldcf.core.database.DBInterfaceMySQL.performModification(DBInterfaceMySQL.java:690)
at 
org.apache.manifoldcf.core.database.DBInterfaceMySQL.performAddIndex(DBInterfaceMySQL.java:509)
at 
org.apache.manifoldcf.core.database.BaseTable.performAddIndex(BaseTable.java:139)
at 
org.apache.manifoldcf.crawler.jobs.IntrinsicLink.install(IntrinsicLink.java:140)
at org.apache.manifoldcf.crawler.jobs.HopCount.install(HopCount.java:190)
at org.apache.manifoldcf.crawler.jobs.JobManager.install(JobManager.java:79)
at 
org.apache.manifoldcf.crawler.system.ManifoldCF.installSystemTables(ManifoldCF.java:506)
at 
org.apache.manifoldcf.crawler.system.CrawlerAgent.install(CrawlerAgent.java:48)
at 
org.apache.manifoldcf.agents.agentmanager.AgentManager.registerAgent(AgentManager.java:146)
at 
org.apache.manifoldcf.crawler.system.ManifoldCF.registerThisAgent(ManifoldCF.java:176)
at 
org.apache.manifoldcf.crawler.InitializeAndRegister.doExecute(InitializeAndRegister.java:41)
at 
org.apache.manifoldcf.crawler.InitializeAndRegister.main(InitializeAndRegister.java:60)
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Specified 
key was too long; max key length is 1000 bytes
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.Util.getInstance(Util.java:381)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1031)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:957)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3376)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3308)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1837)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1961)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2537)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2466)
at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:735)
at org.apache.manifoldcf.core.database.Database.execute(Database.java:836)
at 
org.apache.manifoldcf.core.database.Database$ExecuteQueryThread.run(Database.java:677)

Reply via email to