Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ERROR play - Specified key was too long; max key length is 767 bytes #566

Open
sebbbastien opened this issue Sep 11, 2017 · 1 comment
Open

Comments

@sebbbastien
Copy link

Hi,

I got this error when doing the "ZIP" way :

> sudo /home/collins/collins/scripts/collins.sh initdb collins_db_uname collins_db_password
Initializing collins database on localhost...
Please enter mysql root password. Press <enter> for none.
Enter password: 
Granting privs to collins user on localhost...
Please enter mysql root password. Press <enter> for none.
Enter password: 
Running migrationsRunning evolutions...
12:51:35.352 [main] ERROR play - Specified key was too long; max key length is 767 bytes [ERROR:1071, SQLSTATE:42000]
Exception in thread "main" @75a7diblh: Database 'collins' is in an inconsistent state!
	at play.api.db.evolutions.Evolutions$.checkEvolutionsState(Evolutions.scala:196)
	at play.api.db.evolutions.Evolutions$.applyScript(Evolutions.scala:296)
	at play.api.db.evolutions.OfflineEvolutions$.applyScript(Evolutions.scala:631)
	at collins.DbUtil$.delayedEndpoint$collins$DbUtil$1(DbUtil.scala:13)
	at collins.DbUtil$delayedInit$body.apply(DbUtil.scala:7)
	at scala.Function0$class.apply$mcV$sp(Function0.scala:34)
	at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12)
	at scala.App$$anonfun$main$1.apply(App.scala:76)
	at scala.App$$anonfun$main$1.apply(App.scala:76)
	at scala.collection.immutable.List.foreach(List.scala:381)
	at scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala:35)
	at scala.App$class.main(App.scala:76)
	at collins.DbUtil$.main(DbUtil.scala:7)
	at collins.DbUtil.main(DbUtil.scala)
 failed!

I found this can be due to an UTF-8 based system and I try this workaround :

MariaDB [(none)]> set global innodb_large_prefix=on;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> set global innodb_file_format=Barracuda;
Query OK, 0 rows affected (0.00 sec)

The error has been replaced by another :

> sudo /home/collins/collins/scripts/collins.sh initdb collins_db_uname collins_db_password
Initializing collins database on localhost...
Please enter mysql root password. Press <enter> for none.
Enter password: 
Granting privs to collins user on localhost...
Please enter mysql root password. Press <enter> for none.
Enter password: 
Running migrationsRunning evolutions...
13:14:39.596 [main] ERROR com.jolbox.bonecp.ConnectionHandle - Database access problem. Killing off this connection and all remaining connections in the connection pool. SQL State = HY000
Exception in thread "main" java.sql.SQLException: Connection is closed!
	at com.jolbox.bonecp.ConnectionHandle.checkClosed(ConnectionHandle.java:459)
	at com.jolbox.bonecp.ConnectionHandle.prepareStatement(ConnectionHandle.java:1011)
	at play.api.db.evolutions.Evolutions$.prepare(Evolutions.scala:128)
	at play.api.db.evolutions.Evolutions$.updateLastProblem$1(Evolutions.scala:247)
	at play.api.db.evolutions.Evolutions$.applyScript(Evolutions.scala:289)
	at play.api.db.evolutions.OfflineEvolutions$.applyScript(Evolutions.scala:631)
	at collins.DbUtil$.delayedEndpoint$collins$DbUtil$1(DbUtil.scala:13)
	at collins.DbUtil$delayedInit$body.apply(DbUtil.scala:7)
	at scala.Function0$class.apply$mcV$sp(Function0.scala:34)
	at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12)
	at scala.App$$anonfun$main$1.apply(App.scala:76)
	at scala.App$$anonfun$main$1.apply(App.scala:76)
	at scala.collection.immutable.List.foreach(List.scala:381)
	at scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala:35)
	at scala.App$class.main(App.scala:76)
	at collins.DbUtil$.main(DbUtil.scala:7)
	at collins.DbUtil.main(DbUtil.scala)
 failed!

I try to install Collins 2.0.0 :

> mysql -V
mysql  Ver 15.1 Distrib 10.1.26-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
> java -version
openjdk version "1.8.0_141"
OpenJDK Runtime Environment (build 1.8.0_141-8u141-b15-1~deb9u1-b15)
OpenJDK 64-Bit Server VM (build 25.141-b15, mixed mode)
> lsb_release -a
No LSB modules are available.
Distributor ID:	Debian
Description:	Debian GNU/Linux 9.1 (stretch)
Release:	9.1
Codename:	stretch

Can you conrfim the workaround for the fist error and help me with the second one ?

@byxorna
Copy link
Contributor

byxorna commented Sep 14, 2017

@sebbbastien have you tried to launch collins via docker container? We have not cut a release in quite some time, and building from HEAD, or running the latest docker build is the best way to get it running. Can you give that a whirl?

Also, I have not tried that version (15.1) with Collins. Can you try the mysql:5.5 docker container and see if that works?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants