eclipse-hawkbit / hawkbit

Eclipse hawkBit™
https://projects.eclipse.org/projects/iot.hawkbit
Eclipse Public License 2.0
462 stars 189 forks source link

Migration of schema `hawkbit` to version 1.0.1 failed #375

Closed EugenWiens closed 7 years ago

EugenWiens commented 7 years ago

Hello,

I trying to flowing this example https://github.com/eclipse/hawkbit/wiki/Run-hawkBit to activate mysql DB support. But the hawkbit-example-app does not start because the database hackbit is empty and the init / migration fails. This error appears on the TAGs 0.2.0M2 and 0.2.0M1. I am not able to test this on the masater because I get compiler errors. https://github.com/eclipse/hawkbit/issues/374

This are some of the last lines:

2016-12-02 15:23:56.593 INFO 23429 --- [localhost:27017] org.mongodb.driver.connection : Opened connection [connectionId{localValue:1, serverValue:31}] to localhost:27017 2016-12-02 15:23:56.594 INFO 23429 --- [localhost:27017] org.mongodb.driver.cluster : Monitor thread successfully connected to server with description ServerDescription{address=localhost:27017, type=STANDALONE, state=CONNECTED, ok=true, version=ServerVersion{versionList=[3, 2, 11]}, minWireVersion=0, maxWireVersion=4, maxDocumentSize=16777216, roundTripTimeNanos=718182} 2016-12-02 15:23:56.762 WARN 23429 --- [ost-startStop-1] org.flywaydb.core.Flyway : Flyway.isInitOnMigrate() is deprecated. Use isBaselineOnMigrate() instead. Will be removed in Flyway 4.0. 2016-12-02 15:23:56.762 WARN 23429 --- [ost-startStop-1] org.flywaydb.core.Flyway : Flyway.setInitOnMigrate() is deprecated. Use setBaselineOnMigrate() instead. Will be removed in Flyway 4.0. 2016-12-02 15:23:56.778 INFO 23429 --- [ost-startStop-1] o.f.core.internal.util.VersionPrinter : Flyway 3.2.1 by Boxfuse 2016-12-02 15:23:56.847 INFO 23429 --- [ost-startStop-1] o.f.c.i.dbsupport.DbSupportFactory : Database: jdbc:mysql://localhost:3306/hawkbit (MySQL 10.0) 2016-12-02 15:23:56.874 INFO 23429 --- [ost-startStop-1] o.f.core.internal.command.DbValidate : Validated 8 migrations (execution time 00:00.010s) 2016-12-02 15:23:56.889 INFO 23429 --- [ost-startStop-1] o.f.c.i.metadatatable.MetaDataTableImpl : Creating Metadata table: hawkbit.schema_version 2016-12-02 15:23:58.264 INFO 23429 --- [ost-startStop-1] o.f.core.internal.command.DbMigrate : Current version of schema hawkbit: << Empty Schema >> 2016-12-02 15:23:58.265 INFO 23429 --- [ost-startStop-1] o.f.core.internal.command.DbMigrate : Migrating schema hawkbit to version 1.0.1 - init

2016-12-02 15:24:10.813 ERROR 23429 --- [ost-startStop-1] o.f.core.internal.command.DbMigrate : Migration of schema hawkbit to version 1.0.1 failed! Please restore backups and roll back database and code! 2016-12-02 15:24:10.862 ERROR 23429 --- [ost-startStop-1] o.s.b.c.embedded.tomcat.TomcatStarter : Error starting Tomcat context: org.springframework.beans.factory.BeanCreationException 2016-12-02 15:24:11.177 INFO 23429 --- [ost-startStop-1] o.a.c.util.SessionIdGeneratorBase : Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [286] milliseconds. 2016-12-02 15:24:11.180 WARN 23429 --- [ main] ationConfigEmbeddedWebApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Unable to start embedded container; nested exception is org.springframework.boot.context.embedded.EmbeddedServletContainerException: Unable to start embedded Tomcat 2016-12-02 15:24:11.197 ERROR 23429 --- [ main] o.s.boot.SpringApplication : Application startup failed

org.springframework.context.ApplicationContextException: Unable to start embedded container; nested exception is org.springframework.boot.context.embedded.EmbeddedServletContainerException: Unable to start embedded Tomcat at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:133) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:532) at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:118) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:760) at org.springframework.boot.SpringApplication.createAndRefreshContext(SpringApplication.java:360) at org.springframework.boot.SpringApplication.run(SpringApplication.java:306) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1185) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1174) at org.eclipse.hawkbit.app.Start.main(Start.java:41) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.boot.maven.AbstractRunMojo$LaunchRunner.run(AbstractRunMojo.java:478) at java.lang.Thread.run(Thread.java:745) Caused by: org.springframework.boot.context.embedded.EmbeddedServletContainerException: Unable to start embedded Tomcat at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.initialize(TomcatEmbeddedServletContainer.java:99) at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.(TomcatEmbeddedServletContainer.java:76) at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory.getTomcatEmbeddedServletContainer(TomcatEmbeddedServletContainerFactory.java:457) at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory.getEmbeddedServletContainer(TomcatEmbeddedServletContainerFactory.java:168) at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.createEmbeddedServletContainer(EmbeddedWebApplicationContext.java:160) at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:130) ... 14 common frames omitted Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'securityManagedConfiguration.UISecurityConfigurationAdapter': Invocation of init method failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redirectSaveHandler': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.eclipse.hawkbit.repository.SystemManagement org.eclipse.hawkbit.autoconfigure.security.TenantMetadataSavedRequestAwareVaadinAuthenticationSuccessHandler.systemManagement; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'systemManagement': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private javax.persistence.EntityManager org.eclipse.hawkbit.repository.jpa.JpaSystemManagement.entityManager; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.orm.jpa.SharedEntityManagerCreator#0': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException: Migration V1_0_1__init___MYSQL.sql failed

SQL State : 42000 Error Code : 1071 Message : Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) Location : db/migration/MYSQL/V1_0_1init_MYSQL.sql (/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar!/db/migration/MYSQL/V1_0_1init_MYSQL.sql) Line : 361 Statement : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status)

    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:136)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:408)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1570)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
    at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:368)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1123)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1018)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:510)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
    at org.springframework.boot.context.embedded.ServletContextInitializerBeans.getOrderedBeansOfType(ServletContextInitializerBeans.java:233)
    at org.springframework.boot.context.embedded.ServletContextInitializerBeans.getOrderedBeansOfType(ServletContextInitializerBeans.java:214)
    at org.springframework.boot.context.embedded.ServletContextInitializerBeans.addServletContextInitializerBeans(ServletContextInitializerBeans.java:90)
    at org.springframework.boot.context.embedded.ServletContextInitializerBeans.<init>(ServletContextInitializerBeans.java:78)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.getServletContextInitializerBeans(EmbeddedWebApplicationContext.java:237)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.selfInitialize(EmbeddedWebApplicationContext.java:224)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.access$000(EmbeddedWebApplicationContext.java:85)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext$1.onStartup(EmbeddedWebApplicationContext.java:209)
    at org.springframework.boot.context.embedded.tomcat.TomcatStarter.onStartup(TomcatStarter.java:55)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5292)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1407)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1397)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    ... 1 common frames omitted

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redirectSaveHandler': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.eclipse.hawkbit.repository.SystemManagement org.eclipse.hawkbit.autoconfigure.security.TenantMetadataSavedRequestAwareVaadinAuthenticationSuccessHandler.systemManagement; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'systemManagement': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private javax.persistence.EntityManager org.eclipse.hawkbit.repository.jpa.JpaSystemManagement.entityManager; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.orm.jpa.SharedEntityManagerCreator#0': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException: Migration V1_0_1__init___MYSQL.sql failed

SQL State : 42000 Error Code : 1071 Message : Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) Location : db/migration/MYSQL/V1_0_1init_MYSQL.sql (/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar!/db/migration/MYSQL/V1_0_1init_MYSQL.sql) Line : 361 Statement : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status)

    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:334)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1214)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:543)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
    at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:381)
    at org.eclipse.hawkbit.autoconfigure.security.SecurityManagedConfiguration$UISecurityConfigurationAdapter$$EnhancerBySpringCGLIB$$da35ec40.redirectSaveHandler(<generated>)
    at org.eclipse.hawkbit.autoconfigure.security.SecurityManagedConfiguration$UISecurityConfigurationAdapter.afterPropertiesSet(SecurityManagedConfiguration.java:348)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:354)
    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:305)
    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:133)
    ... 34 common frames omitted

Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.eclipse.hawkbit.repository.SystemManagement org.eclipse.hawkbit.autoconfigure.security.TenantMetadataSavedRequestAwareVaadinAuthenticationSuccessHandler.systemManagement; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'systemManagement': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private javax.persistence.EntityManager org.eclipse.hawkbit.repository.jpa.JpaSystemManagement.entityManager; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.orm.jpa.SharedEntityManagerCreator#0': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException: Migration V1_0_1__init___MYSQL.sql failed

SQL State : 42000 Error Code : 1071 Message : Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) Location : db/migration/MYSQL/V1_0_1init_MYSQL.sql (/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar!/db/migration/MYSQL/V1_0_1init_MYSQL.sql) Line : 361 Statement : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status)

    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:573)
    at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88)
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:331)
    ... 51 common frames omitted

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'systemManagement': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private javax.persistence.EntityManager org.eclipse.hawkbit.repository.jpa.JpaSystemManagement.entityManager; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.orm.jpa.SharedEntityManagerCreator#0': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException: Migration V1_0_1__init___MYSQL.sql failed

SQL State : 42000 Error Code : 1071 Message : Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) Location : db/migration/MYSQL/V1_0_1init_MYSQL.sql (/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar!/db/migration/MYSQL/V1_0_1init_MYSQL.sql) Line : 361 Statement : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status)

    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:334)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1214)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:543)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1192)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1116)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1014)
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:545)
    ... 53 common frames omitted

Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire field: private javax.persistence.EntityManager org.eclipse.hawkbit.repository.jpa.JpaSystemManagement.entityManager; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.orm.jpa.SharedEntityManagerCreator#0': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException: Migration V1_0_1__init___MYSQL.sql failed

SQL State : 42000 Error Code : 1071 Message : Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) Location : db/migration/MYSQL/V1_0_1init_MYSQL.sql (/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar!/db/migration/MYSQL/V1_0_1init_MYSQL.sql) Line : 361 Statement : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status)

    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:573)
    at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88)
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:331)
    ... 64 common frames omitted

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.orm.jpa.SharedEntityManagerCreator#0': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException: Migration V1_0_1__init___MYSQL.sql failed

SQL State : 42000 Error Code : 1071 Message : Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) Location : db/migration/MYSQL/V1_0_1init_MYSQL.sql (/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar!/db/migration/MYSQL/V1_0_1init_MYSQL.sql) Line : 361 Statement : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status)

    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:359)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:108)
    at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:634)
    at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:444)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1123)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1018)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:510)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1192)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1116)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1014)
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:545)
    ... 66 common frames omitted

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException: Migration V1_0_1__init___MYSQL.sql failed

SQL State : 42000 Error Code : 1071 Message : Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) Location : db/migration/MYSQL/V1_0_1init_MYSQL.sql (/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar!/db/migration/MYSQL/V1_0_1init_MYSQL.sql) Line : 361 Statement : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status)

    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1578)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:296)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:351)
    ... 81 common frames omitted

Caused by: org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException: Migration V1_0_1__init___MYSQL.sql failed

SQL State : 42000 Error Code : 1071 Message : Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) Location : db/migration/MYSQL/V1_0_1init_MYSQL.sql (/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar!/db/migration/MYSQL/V1_0_1init_MYSQL.sql) Line : 361 Statement : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status)

    at org.flywaydb.core.internal.dbsupport.SqlScript.execute(SqlScript.java:117)
    at org.flywaydb.core.internal.resolver.sql.SqlMigrationExecutor.execute(SqlMigrationExecutor.java:71)
    at org.flywaydb.core.internal.command.DbMigrate$5.doInTransaction(DbMigrate.java:284)
    at org.flywaydb.core.internal.command.DbMigrate$5.doInTransaction(DbMigrate.java:282)
    at org.flywaydb.core.internal.util.jdbc.TransactionTemplate.execute(TransactionTemplate.java:72)
    at org.flywaydb.core.internal.command.DbMigrate.applyMigration(DbMigrate.java:282)
    at org.flywaydb.core.internal.command.DbMigrate.access$800(DbMigrate.java:46)
    at org.flywaydb.core.internal.command.DbMigrate$2.doInTransaction(DbMigrate.java:207)
    at org.flywaydb.core.internal.command.DbMigrate$2.doInTransaction(DbMigrate.java:156)
    at org.flywaydb.core.internal.util.jdbc.TransactionTemplate.execute(TransactionTemplate.java:72)
    at org.flywaydb.core.internal.command.DbMigrate.migrate(DbMigrate.java:156)
    at org.flywaydb.core.Flyway$1.execute(Flyway.java:1059)
    at org.flywaydb.core.Flyway$1.execute(Flyway.java:1006)
    at org.flywaydb.core.Flyway.execute(Flyway.java:1418)
    at org.flywaydb.core.Flyway.migrate(Flyway.java:1006)
    at org.springframework.boot.autoconfigure.flyway.FlywayMigrationInitializer.afterPropertiesSet(FlywayMigrationInitializer.java:66)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1637)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1574)
    ... 90 common frames omitted

Caused by: java.sql.SQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) at org.mariadb.jdbc.internal.util.ExceptionMapper.get(ExceptionMapper.java:125) at org.mariadb.jdbc.internal.util.ExceptionMapper.throwException(ExceptionMapper.java:69) at org.mariadb.jdbc.MariaDbStatement.executeQueryEpilog(MariaDbStatement.java:226) at org.mariadb.jdbc.MariaDbStatement.executeInternal(MariaDbStatement.java:260) at org.mariadb.jdbc.MariaDbStatement.execute(MariaDbStatement.java:273) at org.flywaydb.core.internal.dbsupport.JdbcTemplate.executeStatement(JdbcTemplate.java:238) at org.flywaydb.core.internal.dbsupport.SqlScript.execute(SqlScript.java:114) ... 107 common frames omitted Caused by: org.mariadb.jdbc.internal.util.dao.QueryException: Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.getResult(AbstractQueryProtocol.java:1103) at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.executeQuery(AbstractQueryProtocol.java:132) at org.mariadb.jdbc.MariaDbStatement.executeInternal(MariaDbStatement.java:251) ... 110 common frames omitted

2016-12-02 15:24:11.219 INFO 23429 --- [ main] .b.l.ClasspathLoggingApplicationListener : Application failed to start with classpath: [file:/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/target/classes/, file:/root/.m2/repository/org/apache/commons/commons-lang3/3.4/commons-lang3-3.4.jar, file:/root/.m2/repository/org/springframework/spring-tx/4.2.7.RELEASE/spring-tx-4.2.7.RELEASE.jar, file:/root/.m2/repository/org/w3c/css/sac/1.3/sac-1.3.jar, file:/root/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar, file:/root/.m2/repository/org/springframework/boot/spring-boot-autoconfigure/1.3.7.RELEASE/spring-boot-autoconfigure-1.3.7.RELEASE.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-security-integration/0.2.0-SNAPSHOT/hawkbit-security-integration-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/org/springframework/data/spring-data-commons/1.11.4.RELEASE/spring-data-commons-1.11.4.RELEASE.jar, file:/root/.m2/repository/org/apache/tomcat/embed/tomcat-embed-core/8.0.36/tomcat-embed-core-8.0.36.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-security-core/0.2.0-SNAPSHOT/hawkbit-security-core-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/org/apache/httpcomponents/httpcore/4.4.5/httpcore-4.4.5.jar, file:/root/.m2/repository/org/springframework/data/spring-data-jpa/1.9.4.RELEASE/spring-data-jpa-1.9.4.RELEASE.jar, file:/root/.m2/repository/org/glassfish/javax.json/1.0.4/javax.json-1.0.4.jar, file:/root/.m2/repository/org/vaadin/alump/distributionbar/dbar-addon/1.2.0/dbar-addon-1.2.0.jar, file:/root/.m2/repository/org/vaadin/addons/lazyquerycontainer/vaadin-lazyquerycontainer/7.4.0.1/vaadin-lazyquerycontainer-7.4.0.1.jar, file:/root/.m2/repository/com/yahoo/platform/yui/yuicompressor/2.4.8/yuicompressor-2.4.8.jar, file:/root/.m2/repository/org/vaadin/addons/flexibleoptiongroup/2.2.0/flexibleoptiongroup-2.2.0.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-autoconfigure/0.2.0-SNAPSHOT/hawkbit-autoconfigure-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-rest-core/0.2.0-SNAPSHOT/hawkbit-rest-core-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/org/apache/logging/log4j/log4j-api/2.4.1/log4j-api-2.4.1.jar, file:/root/.m2/repository/commons-io/commons-io/2.4/commons-io-2.4.jar, file:/root/.m2/repository/commons-codec/commons-codec/1.9/commons-codec-1.9.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-ui/0.2.0-SNAPSHOT/hawkbit-ui-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/org/jsoup/jsoup/1.8.3/jsoup-1.8.3.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-mgmt-resource/0.2.0-SNAPSHOT/hawkbit-mgmt-resource-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/org/mongodb/mongo-java-driver/3.2.2/mongo-java-driver-3.2.2.jar, file:/root/.m2/repository/org/eclipse/persistence/org.eclipse.persistence.jpa/2.6.2/org.eclipse.persistence.jpa-2.6.2.jar, file:/root/.m2/repository/javax/validation/validation-api/1.0.0.GA/validation-api-1.0.0.GA-sources.jar, file:/root/.m2/repository/javax/validation/validation-api/1.1.0.Final/validation-api-1.1.0.Final.jar, file:/root/.m2/repository/org/springframework/spring-aop/4.2.7.RELEASE/spring-aop-4.2.7.RELEASE.jar, file:/root/.m2/repository/org/springframework/boot/spring-boot/1.3.7.RELEASE/spring-boot-1.3.7.RELEASE.jar, file:/root/.m2/repository/com/vaadin/vaadin-shared/7.6.5/vaadin-shared-7.6.5.jar, file:/root/.m2/repository/org/slf4j/jcl-over-slf4j/1.7.21/jcl-over-slf4j-1.7.21.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-core/0.2.0-SNAPSHOT/hawkbit-repository-core-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/org/aspectj/aspectjweaver/1.8.9/aspectjweaver-1.8.9.jar, file:/root/.m2/repository/com/vaadin/external/atmosphere/atmosphere-runtime/2.2.7.vaadin1/atmosphere-runtime-2.2.7.vaadin1.jar, file:/root/.m2/repository/com/rabbitmq/amqp-client/3.6.3/amqp-client-3.6.3.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-http-security/0.2.0-SNAPSHOT/hawkbit-http-security-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/com/google/guava/guava/19.0/guava-19.0.jar, file:/root/.m2/repository/org/springframework/boot/spring-boot-starter-web/1.3.7.RELEASE/spring-boot-starter-web-1.3.7.RELEASE.jar, file:/root/.m2/repository/com/vaadin/vaadin-client/7.6.5/vaadin-client-7.6.5.jar, file:/root/.m2/repository/org/springframework/spring-expression/4.2.7.RELEASE/spring-expression-4.2.7.RELEASE.jar, file:/root/.m2/repository/org/apache/tomcat/tomcat-jdbc/8.0.36/tomcat-jdbc-8.0.36.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-ddi-api/0.2.0-SNAPSHOT/hawkbit-ddi-api-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/org/apache/tomcat/embed/tomcat-embed-logging-juli/8.0.36/tomcat-embed-logging-juli-8.0.36.jar, file:/root/.m2/repository/rhino/js/1.7R2/js-1.7R2.jar, file:/root/.m2/repository/org/apache/commons/commons-collections4/4.1/commons-collections4-4.1.jar, file:/root/.m2/repository/org/eclipse/persistence/org.eclipse.persistence.asm/2.6.2/org.eclipse.persistence.asm-2.6.2.jar, file:/root/.m2/repository/com/vaadin/vaadin-spring/1.0.0/vaadin-spring-1.0.0.jar, file:/root/.m2/repository/org/springframework/spring-web/4.2.7.RELEASE/spring-web-4.2.7.RELEASE.jar, file:/root/.m2/repository/com/vaadin/vaadin-push/7.6.5/vaadin-push-7.6.5.jar, file:/root/.m2/repository/org/springframework/boot/spring-boot-starter/1.3.7.RELEASE/spring-boot-starter-1.3.7.RELEASE.jar, file:/root/.m2/repository/org/slf4j/slf4j-api/1.7.21/slf4j-api-1.7.21.jar, file:/root/.m2/repository/com/vaadin/vaadin-sass-compiler/0.9.13/vaadin-sass-compiler-0.9.13.jar, file:/root/.m2/repository/javax/servlet/javax.servlet-api/3.1.0/javax.servlet-api-3.1.0.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.6.7/jackson-core-2.6.7.jar, file:/root/.m2/repository/org/springframework/spring-jdbc/4.2.7.RELEASE/spring-jdbc-4.2.7.RELEASE.jar, file:/root/.m2/repository/org/springframework/retry/spring-retry/1.1.3.RELEASE/spring-retry-1.1.3.RELEASE.jar, file:/root/.m2/repository/org/springframework/spring-context-support/4.2.7.RELEASE/spring-context-support-4.2.7.RELEASE.jar, file:/root/.m2/repository/ch/qos/logback/logback-classic/1.1.7/logback-classic-1.1.7.jar, file:/root/.m2/repository/org/vaadin/addons/tokenfield/7.0.1/tokenfield-7.0.1.jar, file:/root/.m2/repository/org/springframework/boot/spring-boot-starter-jdbc/1.3.7.RELEASE/spring-boot-starter-jdbc-1.3.7.RELEASE.jar, file:/root/.m2/repository/org/springframework/plugin/spring-plugin-core/1.2.0.RELEASE/spring-plugin-core-1.2.0.RELEASE.jar, file:/root/.m2/repository/org/flywaydb/flyway-core/3.2.1/flyway-core-3.2.1.jar, file:/root/.m2/repository/org/mariadb/jdbc/mariadb-java-client/1.5.2/mariadb-java-client-1.5.2.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-mgmt-api/0.2.0-SNAPSHOT/hawkbit-mgmt-api-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/org/jboss/logging/jboss-logging/3.3.0.Final/jboss-logging-3.3.0.Final.jar, file:/root/.m2/repository/org/vaadin/spring/extensions/vaadin-spring-ext-security/0.0.6.RELEASE/vaadin-spring-ext-security-0.0.6.RELEASE.jar, file:/root/.m2/repository/org/springframework/security/spring-security-config/4.1.2.RELEASE/spring-security-config-4.1.2.RELEASE.jar, file:/root/.m2/repository/org/springframework/data/spring-data-mongodb/1.8.4.RELEASE/spring-data-mongodb-1.8.4.RELEASE.jar, file:/root/.m2/repository/org/vaadin/spring/addons/vaadin-spring-addon-eventbus/0.0.6.RELEASE/vaadin-spring-addon-eventbus-0.0.6.RELEASE.jar, file:/root/.m2/repository/org/springframework/amqp/spring-amqp/1.6.1.RELEASE/spring-amqp-1.6.1.RELEASE.jar, file:/root/.m2/repository/org/slf4j/jul-to-slf4j/1.7.21/jul-to-slf4j-1.7.21.jar, file:/root/.m2/repository/org/hibernate/hibernate-validator/5.2.4.Final/hibernate-validator-5.2.4.Final.jar, file:/root/.m2/repository/com/vaadin/external/flute/flute/1.3.0.gg2/flute-1.3.0.gg2.jar, file:/root/.m2/repository/com/vaadin/vaadin-server/7.6.5/vaadin-server-7.6.5.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-artifact-repository-mongo/0.2.0-SNAPSHOT/hawkbit-artifact-repository-mongo-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/org/springframework/boot/spring-boot-starter-tomcat/1.3.7.RELEASE/spring-boot-starter-tomcat-1.3.7.RELEASE.jar, file:/root/.m2/repository/org/springframework/spring-webmvc/4.2.7.RELEASE/spring-webmvc-4.2.7.RELEASE.jar, file:/root/.m2/repository/org/springframework/hateoas/spring-hateoas/0.19.0.RELEASE/spring-hateoas-0.19.0.RELEASE.jar, file:/root/.m2/repository/com/h2database/h2/1.4.192/h2-1.4.192.jar, file:/root/.m2/repository/org/springframework/security/spring-security-core/4.1.2.RELEASE/spring-security-core-4.1.2.RELEASE.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-ddi-resource/0.2.0-SNAPSHOT/hawkbit-ddi-resource-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/com/rabbitmq/http-client/1.0.0.RELEASE/http-client-1.0.0.RELEASE.jar, file:/root/.m2/repository/org/apache/httpcomponents/httpclient/4.5.2/httpclient-4.5.2.jar, file:/root/.m2/repository/com/fasterxml/classmate/1.1.0/classmate-1.1.0.jar, file:/root/.m2/repository/org/eclipse/persistence/javax.persistence/2.1.1/javax.persistence-2.1.1.jar, file:/root/.m2/repository/org/springframework/boot/spring-boot-starter-data-jpa/1.3.7.RELEASE/spring-boot-starter-data-jpa-1.3.7.RELEASE.jar, file:/root/.m2/repository/org/eclipse/persistence/org.eclipse.persistence.antlr/2.6.2/org.eclipse.persistence.antlr-2.6.2.jar, file:/root/.m2/repository/org/eclipse/persistence/org.eclipse.persistence.jpa.jpql/2.6.2/org.eclipse.persistence.jpa.jpql-2.6.2.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-dmf-api/0.2.0-SNAPSHOT/hawkbit-dmf-api-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/com/vaadin/external/streamhtmlparser/streamhtmlparser-jsilver/0.0.10.vaadin1/streamhtmlparser-jsilver-0.0.10.vaadin1.jar, file:/root/.m2/repository/org/springframework/boot/spring-boot-starter-validation/1.3.7.RELEASE/spring-boot-starter-validation-1.3.7.RELEASE.jar, file:/root/.m2/repository/org/apache/tomcat/embed/tomcat-embed-el/8.0.36/tomcat-embed-el-8.0.36.jar, file:/root/.m2/repository/org/eclipse/persistence/org.eclipse.persistence.core/2.6.2/org.eclipse.persistence.core-2.6.2.jar, file:/root/.m2/repository/org/slf4j/log4j-over-slf4j/1.7.21/log4j-over-slf4j-1.7.21.jar, file:/root/.m2/repository/org/springframework/security/spring-security-web/4.1.2.RELEASE/spring-security-web-4.1.2.RELEASE.jar, file:/root/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.6.7/jackson-annotations-2.6.7.jar, file:/root/.m2/repository/org/yaml/snakeyaml/1.16/snakeyaml-1.16.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-core/0.2.0-SNAPSHOT/hawkbit-core-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.6.7/jackson-databind-2.6.7.jar, file:/root/.m2/repository/org/springframework/security/spring-security-aspects/4.1.2.RELEASE/spring-security-aspects-4.1.2.RELEASE.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-dmf-amqp/0.2.0-SNAPSHOT/hawkbit-dmf-amqp-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/com/vaadin/vaadin-spring-boot/1.0.0/vaadin-spring-boot-1.0.0.jar, file:/root/.m2/repository/org/apache/tomcat/tomcat-juli/8.0.36/tomcat-juli-8.0.36.jar, file:/root/.m2/repository/org/springframework/boot/spring-boot-starter-logging/1.3.7.RELEASE/spring-boot-starter-logging-1.3.7.RELEASE.jar, file:/root/.m2/repository/org/vaadin/addons/contextmenu/4.5/contextmenu-4.5.jar, file:/root/.m2/repository/org/springframework/spring-beans/4.2.7.RELEASE/spring-beans-4.2.7.RELEASE.jar, file:/root/.m2/repository/com/vaadin/external/google/guava/16.0.1.vaadin1/guava-16.0.1.vaadin1.jar, file:/root/.m2/repository/org/springframework/spring-messaging/4.2.7.RELEASE/spring-messaging-4.2.7.RELEASE.jar, file:/root/.m2/repository/com/vaadin/external/slf4j/vaadin-slf4j-jdk14/1.6.1/vaadin-slf4j-jdk14-1.6.1.jar, file:/root/.m2/repository/org/apache/tomcat/embed/tomcat-embed-websocket/8.0.36/tomcat-embed-websocket-8.0.36.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-api/0.2.0-SNAPSHOT/hawkbit-repository-api-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/org/springframework/spring-orm/4.2.7.RELEASE/spring-orm-4.2.7.RELEASE.jar, file:/root/.m2/repository/org/springframework/spring-aspects/4.2.7.RELEASE/spring-aspects-4.2.7.RELEASE.jar, file:/root/.m2/repository/org/springframework/spring-core/4.2.7.RELEASE/spring-core-4.2.7.RELEASE.jar, file:/root/.m2/repository/org/springframework/spring-context/4.2.7.RELEASE/spring-context-4.2.7.RELEASE.jar, file:/root/.m2/repository/cz/jirutka/rsql/rsql-parser/2.1.0/rsql-parser-2.1.0.jar, file:/root/.m2/repository/org/vaadin/spring/extensions/vaadin-spring-ext-core/0.0.6.RELEASE/vaadin-spring-ext-core-0.0.6.RELEASE.jar, file:/root/.m2/repository/com/vaadin/vaadin-themes/7.6.5/vaadin-themes-7.6.5.jar, file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-ddi-dl-api/0.2.0-SNAPSHOT/hawkbit-ddi-dl-api-0.2.0-SNAPSHOT.jar, file:/root/.m2/repository/javax/transaction/javax.transaction-api/1.2/javax.transaction-api-1.2.jar, file:/root/.m2/repository/org/springframework/boot/spring-boot-starter-aop/1.3.7.RELEASE/spring-boot-starter-aop-1.3.7.RELEASE.jar, file:/root/.m2/repository/ch/qos/logback/logback-core/1.1.7/logback-core-1.1.7.jar, file:/root/.m2/repository/org/springframework/amqp/spring-rabbit/1.6.1.RELEASE/spring-rabbit-1.6.1.RELEASE.jar] [WARNING] java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.boot.maven.AbstractRunMojo$LaunchRunner.run(AbstractRunMojo.java:478) at java.lang.Thread.run(Thread.java:745) Caused by: org.springframework.context.ApplicationContextException: Unable to start embedded container; nested exception is org.springframework.boot.context.embedded.EmbeddedServletContainerException: Unable to start embedded Tomcat at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:133) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:532) at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:118) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:760) at org.springframework.boot.SpringApplication.createAndRefreshContext(SpringApplication.java:360) at org.springframework.boot.SpringApplication.run(SpringApplication.java:306) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1185) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1174) at org.eclipse.hawkbit.app.Start.main(Start.java:41) ... 6 more Caused by: org.springframework.boot.context.embedded.EmbeddedServletContainerException: Unable to start embedded Tomcat at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.initialize(TomcatEmbeddedServletContainer.java:99) at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.(TomcatEmbeddedServletContainer.java:76) at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory.getTomcatEmbeddedServletContainer(TomcatEmbeddedServletContainerFactory.java:457) at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory.getEmbeddedServletContainer(TomcatEmbeddedServletContainerFactory.java:168) at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.createEmbeddedServletContainer(EmbeddedWebApplicationContext.java:160) at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:130) ... 14 more Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'securityManagedConfiguration.UISecurityConfigurationAdapter': Invocation of init method failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redirectSaveHandler': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.eclipse.hawkbit.repository.SystemManagement org.eclipse.hawkbit.autoconfigure.security.TenantMetadataSavedRequestAwareVaadinAuthenticationSuccessHandler.systemManagement; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'systemManagement': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private javax.persistence.EntityManager org.eclipse.hawkbit.repository.jpa.JpaSystemManagement.entityManager; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.orm.jpa.SharedEntityManagerCreator#0': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException: Migration V1_0_1__init___MYSQL.sql failed

SQL State : 42000 Error Code : 1071 Message : Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) Location : db/migration/MYSQL/V1_0_1init_MYSQL.sql (/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar!/db/migration/MYSQL/V1_0_1init_MYSQL.sql) Line : 361 Statement : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status)

    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:136)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:408)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1570)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
    at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:368)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1123)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1018)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:510)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
    at org.springframework.boot.context.embedded.ServletContextInitializerBeans.getOrderedBeansOfType(ServletContextInitializerBeans.java:233)
    at org.springframework.boot.context.embedded.ServletContextInitializerBeans.getOrderedBeansOfType(ServletContextInitializerBeans.java:214)
    at org.springframework.boot.context.embedded.ServletContextInitializerBeans.addServletContextInitializerBeans(ServletContextInitializerBeans.java:90)
    at org.springframework.boot.context.embedded.ServletContextInitializerBeans.<init>(ServletContextInitializerBeans.java:78)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.getServletContextInitializerBeans(EmbeddedWebApplicationContext.java:237)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.selfInitialize(EmbeddedWebApplicationContext.java:224)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.access$000(EmbeddedWebApplicationContext.java:85)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext$1.onStartup(EmbeddedWebApplicationContext.java:209)
    at org.springframework.boot.context.embedded.tomcat.TomcatStarter.onStartup(TomcatStarter.java:55)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5292)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1407)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1397)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    ... 1 more

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redirectSaveHandler': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.eclipse.hawkbit.repository.SystemManagement org.eclipse.hawkbit.autoconfigure.security.TenantMetadataSavedRequestAwareVaadinAuthenticationSuccessHandler.systemManagement; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'systemManagement': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private javax.persistence.EntityManager org.eclipse.hawkbit.repository.jpa.JpaSystemManagement.entityManager; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.orm.jpa.SharedEntityManagerCreator#0': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException: Migration V1_0_1__init___MYSQL.sql failed

SQL State : 42000 Error Code : 1071 Message : Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) Location : db/migration/MYSQL/V1_0_1init_MYSQL.sql (/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar!/db/migration/MYSQL/V1_0_1init_MYSQL.sql) Line : 361 Statement : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status)

    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:334)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1214)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:543)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
    at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:381)
    at org.eclipse.hawkbit.autoconfigure.security.SecurityManagedConfiguration$UISecurityConfigurationAdapter$$EnhancerBySpringCGLIB$$da35ec40.redirectSaveHandler(<generated>)
    at org.eclipse.hawkbit.autoconfigure.security.SecurityManagedConfiguration$UISecurityConfigurationAdapter.afterPropertiesSet(SecurityManagedConfiguration.java:348)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:354)
    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:305)
    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:133)
    ... 34 more

Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.eclipse.hawkbit.repository.SystemManagement org.eclipse.hawkbit.autoconfigure.security.TenantMetadataSavedRequestAwareVaadinAuthenticationSuccessHandler.systemManagement; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'systemManagement': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private javax.persistence.EntityManager org.eclipse.hawkbit.repository.jpa.JpaSystemManagement.entityManager; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.orm.jpa.SharedEntityManagerCreator#0': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException: Migration V1_0_1__init___MYSQL.sql failed

SQL State : 42000 Error Code : 1071 Message : Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) Location : db/migration/MYSQL/V1_0_1init_MYSQL.sql (/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar!/db/migration/MYSQL/V1_0_1init_MYSQL.sql) Line : 361 Statement : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status)

    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:573)
    at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88)
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:331)
    ... 51 more

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'systemManagement': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private javax.persistence.EntityManager org.eclipse.hawkbit.repository.jpa.JpaSystemManagement.entityManager; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.orm.jpa.SharedEntityManagerCreator#0': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException: Migration V1_0_1__init___MYSQL.sql failed

SQL State : 42000 Error Code : 1071 Message : Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) Location : db/migration/MYSQL/V1_0_1init_MYSQL.sql (/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar!/db/migration/MYSQL/V1_0_1init_MYSQL.sql) Line : 361 Statement : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status)

    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:334)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1214)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:543)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1192)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1116)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1014)
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:545)
    ... 53 more

Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire field: private javax.persistence.EntityManager org.eclipse.hawkbit.repository.jpa.JpaSystemManagement.entityManager; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.orm.jpa.SharedEntityManagerCreator#0': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException: Migration V1_0_1__init___MYSQL.sql failed

SQL State : 42000 Error Code : 1071 Message : Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) Location : db/migration/MYSQL/V1_0_1init_MYSQL.sql (/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar!/db/migration/MYSQL/V1_0_1init_MYSQL.sql) Line : 361 Statement : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status)

    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:573)
    at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88)
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:331)
    ... 64 more

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.orm.jpa.SharedEntityManagerCreator#0': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException: Migration V1_0_1__init___MYSQL.sql failed

SQL State : 42000 Error Code : 1071 Message : Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) Location : db/migration/MYSQL/V1_0_1init_MYSQL.sql (/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar!/db/migration/MYSQL/V1_0_1init_MYSQL.sql) Line : 361 Statement : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status)

    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:359)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:108)
    at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:634)
    at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:444)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1123)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1018)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:510)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1192)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1116)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1014)
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:545)
    ... 66 more

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException: Migration V1_0_1__init___MYSQL.sql failed

SQL State : 42000 Error Code : 1071 Message : Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) Location : db/migration/MYSQL/V1_0_1init_MYSQL.sql (/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar!/db/migration/MYSQL/V1_0_1init_MYSQL.sql) Line : 361 Statement : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status)

    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1578)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:296)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:351)
    ... 81 more

Caused by: org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException: Migration V1_0_1__init___MYSQL.sql failed

SQL State : 42000 Error Code : 1071 Message : Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) Location : db/migration/MYSQL/V1_0_1init_MYSQL.sql (/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar!/db/migration/MYSQL/V1_0_1init_MYSQL.sql) Line : 361 Statement : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status)

    at org.flywaydb.core.internal.dbsupport.SqlScript.execute(SqlScript.java:117)
    at org.flywaydb.core.internal.resolver.sql.SqlMigrationExecutor.execute(SqlMigrationExecutor.java:71)
    at org.flywaydb.core.internal.command.DbMigrate$5.doInTransaction(DbMigrate.java:284)
    at org.flywaydb.core.internal.command.DbMigrate$5.doInTransaction(DbMigrate.java:282)
    at org.flywaydb.core.internal.util.jdbc.TransactionTemplate.execute(TransactionTemplate.java:72)
    at org.flywaydb.core.internal.command.DbMigrate.applyMigration(DbMigrate.java:282)
    at org.flywaydb.core.internal.command.DbMigrate.access$800(DbMigrate.java:46)
    at org.flywaydb.core.internal.command.DbMigrate$2.doInTransaction(DbMigrate.java:207)
    at org.flywaydb.core.internal.command.DbMigrate$2.doInTransaction(DbMigrate.java:156)
    at org.flywaydb.core.internal.util.jdbc.TransactionTemplate.execute(TransactionTemplate.java:72)
    at org.flywaydb.core.internal.command.DbMigrate.migrate(DbMigrate.java:156)
    at org.flywaydb.core.Flyway$1.execute(Flyway.java:1059)
    at org.flywaydb.core.Flyway$1.execute(Flyway.java:1006)
    at org.flywaydb.core.Flyway.execute(Flyway.java:1418)
    at org.flywaydb.core.Flyway.migrate(Flyway.java:1006)
    at org.springframework.boot.autoconfigure.flyway.FlywayMigrationInitializer.afterPropertiesSet(FlywayMigrationInitializer.java:66)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1637)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1574)
    ... 90 more

Caused by: java.sql.SQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) at org.mariadb.jdbc.internal.util.ExceptionMapper.get(ExceptionMapper.java:125) at org.mariadb.jdbc.internal.util.ExceptionMapper.throwException(ExceptionMapper.java:69) at org.mariadb.jdbc.MariaDbStatement.executeQueryEpilog(MariaDbStatement.java:226) at org.mariadb.jdbc.MariaDbStatement.executeInternal(MariaDbStatement.java:260) at org.mariadb.jdbc.MariaDbStatement.execute(MariaDbStatement.java:273) at org.flywaydb.core.internal.dbsupport.JdbcTemplate.executeStatement(JdbcTemplate.java:238) at org.flywaydb.core.internal.dbsupport.SqlScript.execute(SqlScript.java:114) ... 107 more Caused by: org.mariadb.jdbc.internal.util.dao.QueryException: Specified key was too long; max key length is 767 bytes Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.getResult(AbstractQueryProtocol.java:1103) at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.executeQuery(AbstractQueryProtocol.java:132) at org.mariadb.jdbc.MariaDbStatement.executeInternal(MariaDbStatement.java:251) ... 110 more [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 22.560 s [INFO] Finished at: 2016-12-02T15:24:11+01:00 [INFO] Final Memory: 59M/746M [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:1.3.7.RELEASE:run (default-cli) on project hawkbit-example-app: An exception occurred while running. null: InvocationTargetException: Unable to start embedded container; nested exception is org.springframework.boot.context.embedded.EmbeddedServletContainerException: Unable to start embedded Tomcat: Error creating bean with name 'securityManagedConfiguration.UISecurityConfigurationAdapter': Invocation of init method failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redirectSaveHandler': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.eclipse.hawkbit.repository.SystemManagement org.eclipse.hawkbit.autoconfigure.security.TenantMetadataSavedRequestAwareVaadinAuthenticationSuccessHandler.systemManagement; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'systemManagement': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private javax.persistence.EntityManager org.eclipse.hawkbit.repository.jpa.JpaSystemManagement.entityManager; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.orm.jpa.SharedEntityManagerCreator#0': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException: [ERROR] Migration V1_0_1init_MYSQL.sql failed [ERROR] ----------------------------------------- [ERROR] SQL State : 42000 [ERROR] Error Code : 1071 [ERROR] Message : Specified key was too long; max key length is 767 bytes [ERROR] Query is : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) [ERROR] Location : db/migration/MYSQL/V1_0_1init_MYSQL.sql (/home/adminArea/servers/hawkbit/examples/hawkbit-example-app/file:/root/.m2/repository/org/eclipse/hawkbit/hawkbit-repository-jpa/0.2.0-SNAPSHOT/hawkbit-repository-jpa-0.2.0-SNAPSHOT.jar!/db/migration/MYSQL/V1_0_1__init___MYSQL.sql) [ERROR] Line : 361 [ERROR] Statement : create index sp_idx_target_info_02 on sp_target_info (target_id, update_status) [ERROR] -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

michahirsch commented 7 years ago

Hi this is probably the same problem as issue: https://github.com/eclipse/hawkbit/issues/256 the solution is to setup the collation of the mysql correctly.

EugenWiens commented 7 years ago

Sorry @michahirsch for the stupid question but how can I setup mysql correctly for hawkbit?

michahirsch commented 7 years ago

You probably already have a database in your MySql, then you could try ALTER DATABASE database-name CHARACTER SET utf8 COLLATE utf8_general_ci; To set the character set and the collation for this database.

You can also setup the default character set and collation in the mysql-server in the configuration. You'll find this in the MySql guide.

EugenWiens commented 7 years ago

Hi @michahirsch sorry that I come back to you with this stupid problem. I am not abbel to start the hawkbit-example-app. I following your recommendation regarding the mysql data base. I set the character set in the config file "/etc/mysql/mysql.conf.d/mysqld.cnf as following: `# default character set [client] default-character-set=utf8

[mysql] default-character-set=utf8

[mysqld] collation-server = utf8_general_ci init-connect='SET NAMES utf8' character-set-server = utf8`

Additionally I try the command you mentioned. ALTER DATABASE database-name CHARACTER SET utf8 COLLATE utf8_general_ci; after the failed migration and on a clean database.

Is there a way to get a clean database with that hawkbit can work? I have to admit that databases are not my speciality :)

michahirsch commented 7 years ago

What kind of error you getting now? Shouldn't be the the same error, right? hawkBit is using a database-migration library called Flyway which creates a own database-table to store the migration metadata.

You can either delete this table schema_version or drop the whole database in your mysql instance. Then it should startup properly.

Another way is you can just configure another JDBC-Url in hawkBit which defines another schema. E.g. spring.datasource.url=jdbc:mysql://localhost:3306/hawkBitSchema

EugenWiens commented 7 years ago

This steps I performed.

  1. Setup the SQL Settings restart DB.
  2. created a DB with name hawkbit
  3. starts hawkbit-example-app

and I get a similar migration Error that I posted above

michahirsch commented 7 years ago

Can you execute the following command show variables like 'character_set%'; to double check the character set settings?

EugenWiens commented 7 years ago

Sorry I forgot to add the info on my last comment.

MariaDB [mysql]> use hawkbit Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A

Database changed MariaDB [hawkbit]> show variables like 'collation%'; +----------------------+--------------------+ | Variable_name | Value | +----------------------+--------------------+ | collation_connection | utf8mb4_general_ci | | collation_database | utf8mb4_general_ci | | collation_server | utf8mb4_general_ci | +----------------------+--------------------+ 3 rows in set (0.00 sec)

MariaDB [hawkbit]> show variables like 'char%';
+--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | utf8mb4 | | character_set_connection | utf8mb4 | | character_set_database | utf8mb4 | | character_set_filesystem | binary | | character_set_results | utf8mb4 | | character_set_server | utf8mb4 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ 8 rows in set (0.00 sec)

MariaDB [hawkbit]> show variables like 'character_set%'; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | utf8mb4 | | character_set_connection | utf8mb4 | | character_set_database | utf8mb4 | | character_set_filesystem | binary | | character_set_results | utf8mb4 | | character_set_server | utf8mb4 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ 8 rows in set (0.00 sec)

EugenWiens commented 7 years ago

I find the command charset (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets.

After executing this charset utf8 the information looks different.

`MariaDB [mysql]> show variables like 'collation%'; show variables like 'char%'; show variables like 'character_set%'; +----------------------+--------------------+ | Variable_name | Value | +----------------------+--------------------+ | collation_connection | utf8_general_ci | | collation_database | utf8mb4_general_ci | | collation_server | utf8mb4_general_ci | +----------------------+--------------------+ 3 rows in set (0.00 sec)

+--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8mb4 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8mb4 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ 8 rows in set (0.00 sec)

+--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8mb4 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8mb4 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ 8 rows in set (0.00 sec)

MariaDB [mysql]> help ` but still the same Error

michahirsch commented 7 years ago

the problem is the variable | character_set_database | utf8mb4 | the utf8mb4 is wrong I guess and so not working.

Stefano mentioned this in the #256 issue

It is worth maybe to mention somewhere (guide ?) a workaround. mariadb in current distros (tested on Ubuntu 16.04) is set with:

character-set-server = utf8mb4 collation-server = utf8mb4_general_ci

It is enough to set the collation for the hawkbit's database to reduce the number of bytes per character. I set collation to "latin1_bin" (1 byte x character), and the whole migration works up to the end.

Best regards, Stefano

EugenWiens commented 7 years ago

Cool Thank you I will check this

michahirsch commented 7 years ago

Sorry, I've never personally ran in this problem, though we are also using MySql on unix systems or in docker containers based on linux. But never had this problem personally :)

EugenWiens commented 7 years ago

Oh sorry I had read the issue #256 but not found the solution. Now the migration works. And my system is running.

This steps I performed.

  1. created a new DB with name hawkbit
  2. set database "COLLATE to latin1_bin" (ALTER DATABASE hawkbit COLLATE latin1_bin;)
  3. starts hawkbit-example-app

Is there limitations or problems when the collate of the database is set to latin1_bin ?

Thank you very much for your help @michahirsch

michahirsch commented 7 years ago

@EugenWiens thanks for the successful fix report!
There is no limitation about the collation for hawkBit. So this should be totally fine.

Hope now you can enjoy hawkBit :).

Cheers, Michael