[keycloak-dev] JTA issues
Marek Posolda
mposolda at redhat.com
Mon Aug 8 08:31:13 EDT 2016
The question is, if we can fix liquibase instead of require people to
change DS? Maybe I can try to continue in your branch later this week
and look at it?
Another possibility: Don't bootstrap JTA automatically at
KeycloakSessionFactory.create() but instead do it just in HTTP requests
(in KeycloakSessionServletFilter ). Then liquibase bootstrap won't be an
issue?
Marek
On 06/08/16 17:31, Bill Burke wrote:
> I hooked in JTA on my branch. When KeycloakSessionFactory.create() is
> executed this happens:
>
> * the code will check the JTA TransactionManager to see if a transaction
> is currently active
>
> * If there is an active transaction, it is suspended
> (TransactionManager.suspend()). A new one is created and associated
> with the thread TransactionManager.begin()
>
> * A wrapper for the JTA transaction is created and registered with the
> KeycloakTransactionManager
>
> * At transaction completion if there was a suspended JTA transaction it
> is resumed.
>
> There are some issues with this though. You have to modify the
> KeycloakDS <datasource> declaration and put in a flag jta="false". If
> you don't do this then you get errors at boot time with Liquibase. So,
> that change to KeycloakDS is the actual issue here. Migrating apps will
> have to set the jta flag before they will be able to run with the latest
> keycloak version. We may be able to specify a warning at boot time.
>
> Bill
>
> _______________________________________________
> keycloak-dev mailing list
> keycloak-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/keycloak-dev
More information about the keycloak-dev
mailing list