isis-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Marianne Hagaseth <Marianne.Hagas...@marintek.sintef.no>
Subject MySQL and "Specified key was too long"
Date Fri, 20 Mar 2015 09:35:32 GMT
Hi there,
I am trying to add this property (see code further down) and then using mySQL for the persistence.
However, it fails with a MySQL error: "Specified key was too long; max key length is 767 bytes"

Anyone who have ideas for where to start searching for the error?

Best,
Marianne Hagaseth.

//region > rule (property)
   private Rule rule;
   @javax.jdo.annotations.Column(name="ruleId",allowsNull="true")
   @MemberOrder(name="General", sequence="80")
   public Rule getRule() {
               return rule;
   }
   public void setRule(final Rule rule) {
       this.rule = rule;
   }
   //endregion



10:20:45,861  [Schema               main       DEBUG]  Execution Time = 123 ms
10:20:45,865  [Datastore            main       ERROR]  An exception was thrown while adding/validating
class(es) : Specified key was too long; max key length is 767 bytes
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:526)


       at org.mortbay.jetty.Server.doStart(Server.java:224)
       at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
       at org.apache.isis.core.webserver.WebServerBootstrapper.bootstrap(WebServerBootstrapper.java:85)
       at org.apache.isis.core.webserver.WebServer.run(WebServer.java:103)
       at org.apache.isis.core.webserver.WebServer.main(WebServer.java:67)
       at org.apache.isis.WebServer.main(WebServer.java:25)

10:20:45,865  [Datastore            main       ERROR]  An exception was thrown while adding/validating
class(es) : Specified key was too long; max key length is 767 bytes
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:526)
       at com.mysql.jdbc.Util.handleNewInstance(Util.java:377)
       at com.mysql.jdbc.Util.getInstance(Util.java:360)
       at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:978)


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:526)
       ... 54 more
10:20:46,204  [WicketFilter         main       ERROR]  The initialization of an application
with name 'WicketFilter' has failed.
com.google.inject.ProvisionException: Guice provision errors:

1) Error in custom provider, org.datanucleus.exceptions.NucleusDataStoreException: Error(s)
were found while auto-creating/validating the datastore for classes. The errors are printed
in the log, and are attached to this exception.
  at org.apache.isis.core.runtime.runner.IsisInjectModule.provideIsisSystem(IsisInjectModule.java:132)


   //region > rule (property)
   private Rule rule;
   @javax.jdo.annotations.Column(name="ruleId",allowsNull="true")
   @MemberOrder(name="General", sequence="80")
   public Rule getRule() {
               return rule;
   }
   public void setRule(final Rule rule) {
       this.rule = rule;
   }
   //endregion



Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message