Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in
It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

Crucible - MySql 5.6 Migration From hsql Constraint Issue (Specified key was too long; max key length is 767 bytes)

When migrating from hsql to MySql 5.6 (pretty much fresh installation) I am getting an error which does not allow completion of migration. An exception is thrown when a constraint is applied to the following table:

create table cru_stored_path (cru_path_id integer not null, cru_path varchar(1000), primary key (cru_path_id)) ENGINE=InnoDB;

constraint:

create index cru_idx_stored_path on cru_stored_path (cru_path);

with stack trace:

2013-02-13 15:57:42,152 ERROR ThreadPool4 fisheye DBEditHelper-doGet - Database migration failed: com.cenqua.crucible.hibernate.CruDBException: Problem with constraints script C: fecru fecru-2.10.1 sql MYSQL schema constraints_80.sql

com.cenqua.crucible.hibernate.CruDBException: Problem with constraints script C: fecru fecru-2.10.1 sql MYSQL schema constraints_80.sql

at com.cenqua.crucible.hibernate.DefaultDBControl.addConstraints(DefaultDBControl.java:344)

at com.atlassian.crucible.migration.item.DBImporter.importData(DBImporter.java:145)

at com.atlassian.crucible.actions.admin.database.DBEditHelper$ImportRunner.call(DBEditHelper.java:90)

at com.atlassian.crucible.actions.admin.database.DBEditHelper$ImportRunner.call(DBEditHelper.java:72)

at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)

at java.util.concurrent.FutureTask.run(FutureTask.java:166)

at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:178)

at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:292)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)

at java.lang.Thread.run(Thread.java:722)

Caused by: com.cenqua.crucible.hibernate.CruDBException: SQL script error on line 124: "create index cru_idx_stored_path on cru_stored_path (cru_path);"

(Specified key was too long; max key length is 767 bytes), please contact http://www.atlassian.com/support/

at com.cenqua.crucible.hibernate.DefaultDBControl.executeScript(DefaultDBControl.java:510)

at com.cenqua.crucible.hibernate.DefaultDBControl.executeScript(DefaultDBControl.java:441)

at com.cenqua.crucible.hibernate.DefaultDBControl.addConstraints(DefaultDBControl.java:338)

... 10 more

Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

at java.lang.reflect.Constructor.newInstance(Constructor.java:525)

at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)

at com.mysql.jdbc.Util.getInstance(Util.java:386)

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1053)

at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4120)

at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4052)

at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2503)

at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2664)

at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2788)

at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1816)

at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1730)

at com.cenqua.crucible.hibernate.DefaultDBControl.executeScript(DefaultDBControl.java:482)

... 12 more

2 answers

I'm having the same problem.

If the problem is just in the migration script, is there a way to tell FishEye to throw away the current DB and start again with MySQL?

Or is Fisheye/Crucible just unable to play with MySQL 5.6 at all (for now)?

--- Answering my own question: No it's not just a migrate bug. As far as I can tell the current build of FishEye can not be made to work with the current build of MySql (5.6). Isn't that something you should tell customers up front? Like in big red flashy letters on the download page?

0 votes
vkharisma Atlassian Team Feb 20, 2013

Hi Brian,

This is a bug that currently being tracked by our developer here: https://jira.atlassian.com/browse/FE-4507

If
this is a new MySQL instance, can you try downgrading to MySQL 5.5?

Cheers,

Suggest an answer

Log in or Sign up to answer
TAGS
Community showcase
Published in Apps & Integrations

How we use Jira Service Management for our recruitment process! - Part 2

It is never about setting up a process and being done with it. Rather, the focus should always be on optimizing it for the best outcomes. Thus, we didn’t stop at setting up JSM for our recruitment pr...

187 views 0 5
Read article

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you