[keycloak-dev] Problem upgrading from 1.2.0.Beta1 to CR1

Stian Thorgersen stian at redhat.com
Wed May 20 00:42:01 EDT 2015


Great, thanks for letting us know

----- Original Message -----
> From: "Matthew Casperson" <matthew.casperson at autogeneral.com.au>
> To: "Stian Thorgersen" <stian at redhat.com>
> Cc: mposolda at redhat.com, keycloak-dev at lists.jboss.org
> Sent: Tuesday, 19 May, 2015 10:44:25 PM
> Subject: Re: [keycloak-dev] Problem upgrading from 1.2.0.Beta1 to CR1
> 
> Apologies for not testing this sooner, but I can confirm that 1.2.0-Final
> fixes this issue.
> 
> - Matt
> 
> On Fri, May 8, 2015 at 6:55 AM, Matthew Casperson <
> matthew.casperson at autogeneral.com.au> wrote:
> 
> > I can't make any promises, but I will certainly try :)
> >
> > - Matt
> >
> > On Thu, May 7, 2015 at 2:08 PM, Stian Thorgersen <stian at redhat.com> wrote:
> >
> >> Just tried upgrading to 1.2.0.Beta1 from 1.0.4 and can confirm there's a
> >> problem.
> >>
> >> If we get a fix in master can you try it out before we release
> >> 1.2.0.Final next week?
> >>
> >> ----- Original Message -----
> >> > From: "Matthew Casperson" <matthew.casperson at autogeneral.com.au>
> >> > To: "Stian Thorgersen" <stian at redhat.com>, mposolda at redhat.com
> >> > Cc: keycloak-dev at lists.jboss.org
> >> > Sent: Wednesday, May 6, 2015 10:51:50 PM
> >> > Subject: Re: [keycloak-dev] Problem upgrading from 1.2.0.Beta1 to CR1
> >> >
> >> > > By the way, are you using H2 in production?
> >> > We are still developing the platforms that rely on Keycloak. H2 has
> >> worked
> >> > well (we have low traffic with internal users only), but moving to
> >> MySQL is
> >> > something we'll be doing.
> >> >
> >> > > What version did you upgrade from?
> >> > The table was upgraded from 1.0.4 to 1.2.0.Beta1, then the error
> >> appeared
> >> > attempting to upgrade to CR1.
> >> >
> >> > >Maybe you can try to manually connect to your H2 database and set the
> >> > fields "DIRECT_GRANTS_ONLY" on CLIENT table to non-null value manually
> >> > through SQL.
> >> > I'll spend some time this week looking at the tables and the offending
> >> > column to see if I can manually update it and get the upgrade working.
> >> >
> >> > On Wed, May 6, 2015 at 9:15 PM, Stian Thorgersen <stian at redhat.com>
> >> wrote:
> >> >
> >> > > What version did you upgrade from?
> >> > >
> >> > > ----- Original Message -----
> >> > > > From: "Matthew Casperson" <matthew.casperson at autogeneral.com.au>
> >> > > > To: keycloak-dev at lists.jboss.org
> >> > > > Sent: Wednesday, May 6, 2015 12:59:03 AM
> >> > > > Subject: [keycloak-dev] Problem upgrading from 1.2.0.Beta1 to CR1
> >> > > >
> >> > > > I received this error after copying the h2 database from my existing
> >> > > > 1.2.0.Beta1 deployment into a fresh copy of CR1.
> >> > > > Maybe a bug with the upgrade process?
> >> > > > jboss.undertow.deployment.default-server.default-host./auth: Failed
> >> to
> >> > > start
> >> > > > service
> >> > > >       at
> >> > > >
> >> > >
> >> org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1904)
> >> > > >       [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
> >> > > >       at
> >> > > >
> >> > >
> >> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> >> > > >       [rt.jar:1.7.0_65]
> >> > > >       at
> >> > > >
> >> > >
> >> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> >> > > >       [rt.jar:1.7.0_65]
> >> > > >       at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_65]
> >> > > > Caused by: java.lang.RuntimeException: Failed to construct public
> >> > > >
> >> > >
> >> org.keycloak.services.resources.KeycloakApplication(javax.servlet.ServletContext,org.jboss.resteasy.core.Dispatcher)
> >> > > >       at
> >> > > >
> >> > >
> >> org.jboss.resteasy.core.ConstructorInjectorImpl.construct(ConstructorInjectorImpl.java:160)
> >> > > >       at
> >> > > >
> >> > >
> >> org.jboss.resteasy.spi.ResteasyProviderFactory.createProviderInstance(ResteasyProviderFactory.java:2211)
> >> > > >       at
> >> > > >
> >> > >
> >> org.jboss.resteasy.spi.ResteasyDeployment.createApplication(ResteasyDeployment.java:295)
> >> > > >       at
> >> > > >
> >> > >
> >> org.jboss.resteasy.spi.ResteasyDeployment.start(ResteasyDeployment.java:236)
> >> > > >       at
> >> > > >
> >> > >
> >> org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.init(ServletContainerDispatcher.java:112)
> >> > > >       at
> >> > > >
> >> > >
> >> org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.init(HttpServletDispatcher.java:36)
> >> > > >       at
> >> > > >
> >> > >
> >> io.undertow.servlet.core.LifecyleInterceptorInvocation.proceed(LifecyleInterceptorInvocation.java:117)
> >> > > >       at
> >> > > >
> >> > >
> >> org.wildfly.extension.undertow.security.RunAsLifecycleInterceptor.init(RunAsLifecycleInterceptor.java:79)
> >> > > >       at
> >> > > >
> >> > >
> >> io.undertow.servlet.core.LifecyleInterceptorInvocation.proceed(LifecyleInterceptorInvocation.java:103)
> >> > > >       at
> >> > > >
> >> > >
> >> io.undertow.servlet.core.ManagedServlet$DefaultInstanceStrategy.start(ManagedServlet.java:220)
> >> > > >       at
> >> > > >
> >> > >
> >> io.undertow.servlet.core.ManagedServlet.createServlet(ManagedServlet.java:125)
> >> > > >       at
> >> > > >
> >> > >
> >> io.undertow.servlet.core.DeploymentManagerImpl.start(DeploymentManagerImpl.java:508)
> >> > > >       at
> >> > > >
> >> > >
> >> org.wildfly.extension.undertow.deployment.UndertowDeploymentService.startContext(UndertowDeploymentService.java:88)
> >> > > >       at
> >> > > >
> >> > >
> >> org.wildfly.extension.undertow.deployment.UndertowDeploymentService.start(UndertowDeploymentService.java:72)
> >> > > >       at
> >> > > >
> >> > >
> >> org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
> >> > > >       [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
> >> > > >       at
> >> > > >
> >> > >
> >> org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
> >> > > >       [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
> >> > > >       ... 3 more
> >> > > > Caused by: org.keycloak.models.ModelException:
> >> > > > javax.persistence.PersistenceException:
> >> > > > org.hibernate.PropertyAccessException: Null value was assigned to a
> >> > > property
> >> > > > of primitive type setter of
> >> > > > org.keycloak.models.jpa.entities.ClientEntity.directGrantsOnly
> >> > > >       at
> >> > > >
> >> > >
> >> org.keycloak.connections.jpa.PersistenceExceptionConverter.convert(PersistenceExceptionConverter.java:44)
> >> > > >       at
> >> > > >
> >> > >
> >> org.keycloak.connections.jpa.PersistenceExceptionConverter.invoke(PersistenceExceptionConverter.java:34)
> >> > > >       at com.sun.proxy.$Proxy57.find(Unknown Source)
> >> > > >       at
> >> > > >
> >> > >
> >> org.keycloak.models.jpa.JpaRealmProvider.getRealm(JpaRealmProvider.java:63)
> >> > > >       at
> >> > > >
> >> > >
> >> org.keycloak.models.cache.DefaultCacheRealmProvider.getRealm(DefaultCacheRealmProvider.java:163)
> >> > > >       at
> >> > > >
> >> > >
> >> org.keycloak.services.managers.ApplianceBootstrap.bootstrap(ApplianceBootstrap.java:40)
> >> > > >       at
> >> > > >
> >> > >
> >> org.keycloak.services.managers.ApplianceBootstrap.bootstrap(ApplianceBootstrap.java:31)
> >> > > >       at
> >> > > >
> >> > >
> >> org.keycloak.services.resources.KeycloakApplication.setupDefaultRealm(KeycloakApplication.java:160)
> >> > > >       at
> >> > > >
> >> > >
> >> org.keycloak.services.resources.KeycloakApplication.<init>(KeycloakApplication.java:85)
> >> > > >       at
> >> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> >> > > Method)
> >> > > >       [rt.jar:1.7.0_65]
> >> > > >       at
> >> > > >
> >> > >
> >> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
> >> > > >       [rt.jar:1.7.0_65]
> >> > > >       at
> >> > > >
> >> > >
> >> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> >> > > >       [rt.jar:1.7.0_65]
> >> > > >       at
> >> java.lang.reflect.Constructor.newInstance(Constructor.java:526)
> >> > > >       [rt.jar:1.7.0_65]
> >> > > >       at
> >> > > >
> >> > >
> >> org.jboss.resteasy.core.ConstructorInjectorImpl.construct(ConstructorInjectorImpl.java:148)
> >> > > >       ... 18 more
> >> > > > Caused by: javax.persistence.PersistenceException:
> >> > > > org.hibernate.PropertyAccessException: Null value was assigned to a
> >> > > property
> >> > > > of primitive type setter of
> >> > > > org.keycloak.models.jpa.entities.ClientEntity.directGrantsOnly
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1763)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1694)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.jpa.spi.AbstractEntityManagerImpl.find(AbstractEntityManagerImpl.java:1141)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.jpa.spi.AbstractEntityManagerImpl.find(AbstractEntityManagerImpl.java:1068)
> >> > > >       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >> > > >       [rt.jar:1.7.0_65]
> >> > > >       at
> >> > > >
> >> > >
> >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> >> > > >       [rt.jar:1.7.0_65]
> >> > > >       at
> >> > > >
> >> > >
> >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> >> > > >       [rt.jar:1.7.0_65]
> >> > > >       at java.lang.reflect.Method.invoke(Method.java:606)
> >> > > [rt.jar:1.7.0_65]
> >> > > >       at
> >> > > >
> >> > >
> >> org.keycloak.connections.jpa.PersistenceExceptionConverter.invoke(PersistenceExceptionConverter.java:32)
> >> > > >       ... 30 more
> >> > > > Caused by: org.hibernate.PropertyAccessException: Null value was
> >> > > assigned to
> >> > > > a property of primitive type setter of
> >> > > > org.keycloak.models.jpa.entities.ClientEntity.directGrantsOnly
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.property.DirectPropertyAccessor$DirectSetter.set(DirectPropertyAccessor.java:126)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.tuple.entity.AbstractEntityTuplizer.setPropertyValues(AbstractEntityTuplizer.java:713)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.tuple.entity.PojoEntityTuplizer.setPropertyValues(PojoEntityTuplizer.java:362)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.persister.entity.AbstractEntityPersister.setPropertyValues(AbstractEntityPersister.java:4718)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.engine.internal.TwoPhaseLoad.doInitializeEntity(TwoPhaseLoad.java:188)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.engine.internal.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:144)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.loader.plan.exec.process.internal.AbstractRowReader.performTwoPhaseLoad(AbstractRowReader.java:244)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.loader.plan.exec.process.internal.AbstractRowReader.finishUp(AbstractRowReader.java:215)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.loader.plan.exec.process.internal.ResultSetProcessorImpl.extractResults(ResultSetProcessorImpl.java:140)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.loader.plan.exec.internal.AbstractLoadPlanBasedLoader.executeLoad(AbstractLoadPlanBasedLoader.java:138)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.loader.plan.exec.internal.AbstractLoadPlanBasedLoader.executeLoad(AbstractLoadPlanBasedLoader.java:102)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.loader.entity.plan.AbstractLoadPlanBasedEntityLoader.load(AbstractLoadPlanBasedEntityLoader.java:186)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:4126)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.event.internal.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:503)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.event.internal.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:468)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.event.internal.DefaultLoadEventListener.load(DefaultLoadEventListener.java:213)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.event.internal.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:275)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.event.internal.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:151)
> >> > > >       at
> >> > > org.hibernate.internal.SessionImpl.fireLoad(SessionImpl.java:1070)
> >> > > >       at
> >> > > org.hibernate.internal.SessionImpl.access$2000(SessionImpl.java:176)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.internal.SessionImpl$IdentifierLoadAccessImpl.load(SessionImpl.java:2551)
> >> > > >       at
> >> org.hibernate.internal.SessionImpl.get(SessionImpl.java:955)
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.jpa.spi.AbstractEntityManagerImpl.find(AbstractEntityManagerImpl.java:1110)
> >> > > >       ... 36 more
> >> > > > Caused by: java.lang.IllegalArgumentException: Can not set boolean
> >> field
> >> > > > org.keycloak.models.jpa.entities.ClientEntity.directGrantsOnly to
> >> null
> >> > > value
> >> > > >       at
> >> > > >
> >> > >
> >> sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:164)
> >> > > >       [rt.jar:1.7.0_65]
> >> > > >       at
> >> > > >
> >> > >
> >> sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:168)
> >> > > >       [rt.jar:1.7.0_65]
> >> > > >       at
> >> > > >
> >> > >
> >> sun.reflect.UnsafeBooleanFieldAccessorImpl.set(UnsafeBooleanFieldAccessorImpl.java:80)
> >> > > >       [rt.jar:1.7.0_65]
> >> > > >       at java.lang.reflect.Field.set(Field.java:741)
> >> [rt.jar:1.7.0_65]
> >> > > >       at
> >> > > >
> >> > >
> >> org.hibernate.property.DirectPropertyAccessor$DirectSetter.set(DirectPropertyAccessor.java:122)
> >> > > >       ... 58 more
> >> > > >
> >> > > > --
> >> > > > Matthew Casperson
> >> > > > Senior Front End Developer
> >> > > > Technology, Space & Distribution
> >> > > > Auto & General Holdings Pty Ltd
> >> > > > P: 07) 3377 8751 (Direct: 3377 8751 )
> >> > > > F: 07) 3377 8833
> >> > > >
> >> > > >
> >> > > >
> >> > > > This email is sent by Auto & General Insurance Company Ltd, Auto &
> >> > > General
> >> > > > Services Pty Ltd, Auto & General Holdings Pty Ltd or a related body
> >> > > > corporate (Auto & General) and is for the intended addressee.
> >> > > > The views expressed in this email and attachments (email) reflect
> >> the
> >> > > views
> >> > > > of the stated author but may not reflect views of Auto & General.
> >> This
> >> > > email
> >> > > > is confidential and subject to copyright.
> >> > > > It may be privileged. If you are not the intended addressee,
> >> > > confidentiality
> >> > > > and privilege have not been waived and any use, interference with,
> >> or
> >> > > > disclosure of this email is unauthorised.
> >> > > > If you are not the intended addressee please immediately notify the
> >> > > sender
> >> > > > and then delete the email. Auto & General does not warrant that this
> >> > > email
> >> > > > is error or virus free.
> >> > > >
> >> > > > _______________________________________________
> >> > > > keycloak-dev mailing list
> >> > > > keycloak-dev at lists.jboss.org
> >> > > > https://lists.jboss.org/mailman/listinfo/keycloak-dev
> >> > >
> >> >
> >> >
> >> >
> >> > --
> >> > *Matthew Casperson*
> >> > *Senior Front End Developer*
> >> > Technology, Space & Distribution
> >> > Auto & General Holdings Pty Ltd
> >> > P: 07) 3377 8751 (Direct: 3377 8751)
> >> > F: 07) 3377 8833
> >> >
> >> > --
> >> >
> >> >
> >> > This email is sent by Auto & General Insurance Company Ltd, Auto &
> >> General
> >> > Services Pty Ltd, Auto & General Holdings Pty Ltd or a related body
> >> > corporate (Auto & General) and is for the intended addressee.
> >> > The views expressed in this email and attachments (email) reflect the
> >> views
> >> > of the stated author but may not reflect views of Auto & General. This
> >> email
> >> > is confidential and subject to copyright.
> >> > It may be privileged. If you are not the intended addressee,
> >> confidentiality
> >> > and privilege have not been waived and any use, interference with, or
> >> > disclosure of this email is unauthorised.
> >> > If you are not the intended addressee please immediately notify the
> >> sender
> >> > and then delete the email. Auto & General does not warrant that this
> >> email
> >> > is error or virus free.
> >> >
> >> >
> >>
> >
> >
> >
> > --
> > *Matthew Casperson*
> > *Senior Front End Developer*
> > Technology, Space & Distribution
> > Auto & General Holdings Pty Ltd
> > P: 07) 3377 8751 (Direct: 3377 8751)
> > F: 07) 3377 8833
> >
> >
> >
> 
> 
> --
> *Matthew Casperson*
> *Senior Front End Developer*
> Technology, Space & Distribution
> Auto & General Holdings Pty Ltd
> P: 07) 3377 8751 (Direct: 3377 8751)
> F: 07) 3377 8833
> 
> --
> 
> 
> This email is sent by Auto & General Insurance Company Ltd, Auto & General
> Services Pty Ltd, Auto & General Holdings Pty Ltd or a related body
> corporate (Auto & General) and is for the intended addressee.
> The views expressed in this email and attachments (email) reflect the views
> of the stated author but may not reflect views of Auto & General. This email
> is confidential and subject to copyright.
> It may be privileged. If you are not the intended addressee, confidentiality
> and privilege have not been waived and any use, interference with, or
> disclosure of this email is unauthorised.
> If you are not the intended addressee please immediately notify the sender
> and then delete the email. Auto & General does not warrant that this email
> is error or virus free.
> 
> 


More information about the keycloak-dev mailing list