keycloak-memoizeit

Changes

distribution/feature-packs/server-feature-pack/src/main/resources/modules/system/layers/base/org/keycloak/keycloak-model-sessions-jpa/main/module.xml 20(+0 -20)

distribution/feature-packs/server-feature-pack/src/main/resources/modules/system/layers/base/org/keycloak/keycloak-model-sessions-mongo/main/module.xml 18(+0 -18)

distribution/server-overlay/eap6/eap6-server-modules/src/main/resources/modules/org/keycloak/keycloak-model-sessions-jpa/main/module.xml 20(+0 -20)

distribution/server-overlay/eap6/eap6-server-modules/src/main/resources/modules/org/keycloak/keycloak-model-sessions-mongo/main/module.xml 18(+0 -18)

model/invalidation-cache/model-adapters/src/main/java/org/keycloak/models/cache/MemoryCacheRealmProviderFactory.java 39(+0 -39)

model/invalidation-cache/model-adapters/src/main/java/org/keycloak/models/cache/MemoryCacheUserProviderFactory.java 41(+0 -41)

model/invalidation-cache/model-adapters/src/main/java/org/keycloak/models/cache/MemoryRealmCache.java 122(+0 -122)

model/invalidation-cache/model-adapters/src/main/java/org/keycloak/models/cache/MemoryUserCache.java 158(+0 -158)

model/invalidation-cache/model-adapters/src/main/java/org/keycloak/models/cache/NoCacheRealmProvider.java 103(+0 -103)

model/invalidation-cache/model-adapters/src/main/java/org/keycloak/models/cache/NoCacheRealmProviderFactory.java 36(+0 -36)

model/invalidation-cache/model-adapters/src/main/java/org/keycloak/models/cache/NoCacheUserProvider.java 200(+0 -200)

model/invalidation-cache/model-adapters/src/main/java/org/keycloak/models/cache/NoCacheUserProviderFactory.java 36(+0 -36)

model/invalidation-cache/model-adapters/src/main/resources/META-INF/services/org.keycloak.models.cache.CacheRealmProviderFactory 2(+0 -2)

model/invalidation-cache/model-adapters/src/main/resources/META-INF/services/org.keycloak.models.cache.CacheUserProviderFactory 2(+0 -2)

model/pom.xml 2(+0 -2)

model/sessions-jpa/pom.xml 43(+0 -43)

model/sessions-jpa/src/main/java/org/keycloak/models/sessions/jpa/ClientSessionAdapter.java 322(+0 -322)

model/sessions-jpa/src/main/java/org/keycloak/models/sessions/jpa/entities/ClientSessionAuthStatusEntity.java 111(+0 -111)

model/sessions-jpa/src/main/java/org/keycloak/models/sessions/jpa/entities/ClientSessionEntity.java 206(+0 -206)

model/sessions-jpa/src/main/java/org/keycloak/models/sessions/jpa/entities/ClientSessionNoteEntity.java 109(+0 -109)

model/sessions-jpa/src/main/java/org/keycloak/models/sessions/jpa/entities/ClientSessionProtocolMapperEntity.java 98(+0 -98)

model/sessions-jpa/src/main/java/org/keycloak/models/sessions/jpa/entities/ClientSessionRoleEntity.java 98(+0 -98)

model/sessions-jpa/src/main/java/org/keycloak/models/sessions/jpa/entities/ClientUserSessionNoteEntity.java 109(+0 -109)

model/sessions-jpa/src/main/java/org/keycloak/models/sessions/jpa/entities/UsernameLoginFailureEntity.java 144(+0 -144)

model/sessions-jpa/src/main/java/org/keycloak/models/sessions/jpa/entities/UserSessionEntity.java 183(+0 -183)

model/sessions-jpa/src/main/java/org/keycloak/models/sessions/jpa/entities/UserSessionNoteEntity.java 108(+0 -108)

model/sessions-jpa/src/main/java/org/keycloak/models/sessions/jpa/JpaKeycloakTransaction.java 53(+0 -53)

model/sessions-jpa/src/main/java/org/keycloak/models/sessions/jpa/JpaUserSessionProvider.java 373(+0 -373)

model/sessions-jpa/src/main/java/org/keycloak/models/sessions/jpa/JpaUserSessionProviderFactory.java 43(+0 -43)

model/sessions-jpa/src/main/java/org/keycloak/models/sessions/jpa/PersistenceExceptionConverter.java 48(+0 -48)

model/sessions-jpa/src/main/java/org/keycloak/models/sessions/jpa/UsernameLoginFailureAdapter.java 69(+0 -69)

model/sessions-jpa/src/main/java/org/keycloak/models/sessions/jpa/UserSessionAdapter.java 167(+0 -167)

model/sessions-jpa/src/main/resources/META-INF/services/org.keycloak.models.UserSessionProviderFactory 1(+0 -1)

model/sessions-mongo/pom.xml 39(+0 -39)

model/sessions-mongo/src/main/java/org/keycloak/models/sessions/mongo/AbstractMongoAdapter.java 44(+0 -44)

model/sessions-mongo/src/main/java/org/keycloak/models/sessions/mongo/ClientSessionAdapter.java 234(+0 -234)

model/sessions-mongo/src/main/java/org/keycloak/models/sessions/mongo/entities/MongoClientSessionEntity.java 152(+0 -152)

model/sessions-mongo/src/main/java/org/keycloak/models/sessions/mongo/entities/MongoUsernameLoginFailureEntity.java 19(+0 -19)

model/sessions-mongo/src/main/java/org/keycloak/models/sessions/mongo/entities/MongoUserSessionEntity.java 158(+0 -158)

model/sessions-mongo/src/main/java/org/keycloak/models/sessions/mongo/MongoUserSessionProvider.java 329(+0 -329)

model/sessions-mongo/src/main/java/org/keycloak/models/sessions/mongo/MongoUserSessionProviderFactory.java 41(+0 -41)

model/sessions-mongo/src/main/java/org/keycloak/models/sessions/mongo/UsernameLoginFailureAdapter.java 77(+0 -77)

model/sessions-mongo/src/main/java/org/keycloak/models/sessions/mongo/UserSessionAdapter.java 153(+0 -153)

model/sessions-mongo/src/main/resources/META-INF/services/org.keycloak.models.UserSessionProviderFactory 1(+0 -1)

pom.xml 10(+0 -10)

Details

diff --git a/connections/jpa/src/main/resources/META-INF/persistence.xml b/connections/jpa/src/main/resources/META-INF/persistence.xml
index 7b7a893..7a55d1e 100755
--- a/connections/jpa/src/main/resources/META-INF/persistence.xml
+++ b/connections/jpa/src/main/resources/META-INF/persistence.xml
@@ -30,17 +30,6 @@
         <class>org.keycloak.models.jpa.entities.AuthenticatorConfigEntity</class>
         <class>org.keycloak.models.jpa.entities.RequiredActionProviderEntity</class>
 
-        <!-- JpaUserSessionProvider -->
-        <class>org.keycloak.models.sessions.jpa.entities.ClientSessionEntity</class>
-        <class>org.keycloak.models.sessions.jpa.entities.ClientSessionRoleEntity</class>
-        <class>org.keycloak.models.sessions.jpa.entities.ClientSessionAuthStatusEntity</class>
-        <class>org.keycloak.models.sessions.jpa.entities.ClientSessionProtocolMapperEntity</class>
-        <class>org.keycloak.models.sessions.jpa.entities.ClientSessionNoteEntity</class>
-        <class>org.keycloak.models.sessions.jpa.entities.ClientUserSessionNoteEntity</class>
-        <class>org.keycloak.models.sessions.jpa.entities.UserSessionNoteEntity</class>
-        <class>org.keycloak.models.sessions.jpa.entities.UserSessionEntity</class>
-        <class>org.keycloak.models.sessions.jpa.entities.UsernameLoginFailureEntity</class>
-
         <!-- JpaAuditProviders -->
         <class>org.keycloak.events.jpa.EventEntity</class>
         <class>org.keycloak.events.jpa.AdminEventEntity</class>
diff --git a/dependencies/server-all/pom.xml b/dependencies/server-all/pom.xml
index b8d0824..c193c00 100755
--- a/dependencies/server-all/pom.xml
+++ b/dependencies/server-all/pom.xml
@@ -42,14 +42,6 @@
         </dependency>
         <dependency>
             <groupId>org.keycloak</groupId>
-            <artifactId>keycloak-model-sessions-jpa</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.keycloak</groupId>
-            <artifactId>keycloak-model-sessions-mongo</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.keycloak</groupId>
             <artifactId>keycloak-model-sessions-infinispan</artifactId>
         </dependency>
         <dependency>
diff --git a/distribution/feature-packs/server-feature-pack/src/main/resources/content/standalone/configuration/keycloak-server.json b/distribution/feature-packs/server-feature-pack/src/main/resources/content/standalone/configuration/keycloak-server.json
index ee56f78..188a2a2 100644
--- a/distribution/feature-packs/server-feature-pack/src/main/resources/content/standalone/configuration/keycloak-server.json
+++ b/distribution/feature-packs/server-feature-pack/src/main/resources/content/standalone/configuration/keycloak-server.json
@@ -22,18 +22,6 @@
         "provider": "jpa"
     },
 
-    "userSessions": {
-        "provider" : "infinispan"
-    },
-
-    "realmCache": {
-        "provider": "infinispan"
-    },
-
-    "userCache": {
-        "provider": "infinispan"
-    },
-
     "timer": {
         "provider": "basic"
     },
@@ -48,18 +36,6 @@
         }
     },
 
-    "login": {
-        "provider": "freemarker"
-    },
-
-    "account": {
-        "provider": "freemarker"
-    },
-
-    "email": {
-        "provider": "freemarker"
-    },
-
     "scheduled": {
         "interval": 900
     },
diff --git a/distribution/feature-packs/server-feature-pack/src/main/resources/modules/system/layers/base/org/keycloak/keycloak-server-subsystem/main/server-war/WEB-INF/jboss-deployment-structure.xml b/distribution/feature-packs/server-feature-pack/src/main/resources/modules/system/layers/base/org/keycloak/keycloak-server-subsystem/main/server-war/WEB-INF/jboss-deployment-structure.xml
index 9205748..38ecba8 100755
--- a/distribution/feature-packs/server-feature-pack/src/main/resources/modules/system/layers/base/org/keycloak/keycloak-server-subsystem/main/server-war/WEB-INF/jboss-deployment-structure.xml
+++ b/distribution/feature-packs/server-feature-pack/src/main/resources/modules/system/layers/base/org/keycloak/keycloak-server-subsystem/main/server-war/WEB-INF/jboss-deployment-structure.xml
@@ -36,8 +36,6 @@
             <module name="org.keycloak.keycloak-model-mongo" services="import"/>
             <module name="org.keycloak.keycloak-model-file" services="import"/>
             <module name="org.keycloak.keycloak-model-sessions-infinispan" services="import"/>
-            <module name="org.keycloak.keycloak-model-sessions-jpa" services="import"/>
-            <module name="org.keycloak.keycloak-model-sessions-mongo" services="import"/>
             <module name="org.keycloak.keycloak-saml-protocol" services="import"/>
             <module name="org.keycloak.keycloak-services" export="true" services="import"/>
             <module name="org.keycloak.keycloak-social-core" services="import"/>
diff --git a/distribution/feature-packs/server-feature-pack/src/main/resources/modules/system/layers/base/org/keycloak/keycloak-services/main/module.xml b/distribution/feature-packs/server-feature-pack/src/main/resources/modules/system/layers/base/org/keycloak/keycloak-services/main/module.xml
index b062204..052383d 100644
--- a/distribution/feature-packs/server-feature-pack/src/main/resources/modules/system/layers/base/org/keycloak/keycloak-services/main/module.xml
+++ b/distribution/feature-packs/server-feature-pack/src/main/resources/modules/system/layers/base/org/keycloak/keycloak-services/main/module.xml
@@ -46,8 +46,6 @@
         <module name="org.keycloak.keycloak-model-mongo" services="import"/>
         <module name="org.keycloak.keycloak-model-file" services="import"/>
         <module name="org.keycloak.keycloak-model-sessions-infinispan" services="import"/>
-        <module name="org.keycloak.keycloak-model-sessions-jpa" services="import"/>
-        <module name="org.keycloak.keycloak-model-sessions-mongo" services="import"/>
         <module name="org.keycloak.keycloak-saml-core" services="import"/>
         <module name="org.keycloak.keycloak-saml-protocol" services="import"/>
         <module name="org.keycloak.keycloak-services" export="true" services="import"/>
diff --git a/distribution/server-overlay/eap6/eap6-server-modules/build.xml b/distribution/server-overlay/eap6/eap6-server-modules/build.xml
index 1f30da0..8f9ba8b 100755
--- a/distribution/server-overlay/eap6/eap6-server-modules/build.xml
+++ b/distribution/server-overlay/eap6/eap6-server-modules/build.xml
@@ -189,14 +189,6 @@
             <maven-resource group="org.keycloak" artifact="keycloak-model-jpa"/>
         </module-def>
 
-        <module-def name="org.keycloak.keycloak-model-sessions-jpa">
-            <maven-resource group="org.keycloak" artifact="keycloak-model-sessions-jpa"/>
-        </module-def>
-
-        <module-def name="org.keycloak.keycloak-model-sessions-mongo">
-            <maven-resource group="org.keycloak" artifact="keycloak-model-sessions-mongo"/>
-        </module-def>
-
         <module-def name="org.keycloak.keycloak-model-sessions-infinispan">
             <maven-resource group="org.keycloak" artifact="keycloak-model-sessions-infinispan"/>
         </module-def>
diff --git a/distribution/server-overlay/eap6/eap6-server-modules/src/main/resources/modules/org/keycloak/keycloak-as7-server-subsystem/main/server-war/WEB-INF/jboss-deployment-structure.xml b/distribution/server-overlay/eap6/eap6-server-modules/src/main/resources/modules/org/keycloak/keycloak-as7-server-subsystem/main/server-war/WEB-INF/jboss-deployment-structure.xml
index 9205748..38ecba8 100755
--- a/distribution/server-overlay/eap6/eap6-server-modules/src/main/resources/modules/org/keycloak/keycloak-as7-server-subsystem/main/server-war/WEB-INF/jboss-deployment-structure.xml
+++ b/distribution/server-overlay/eap6/eap6-server-modules/src/main/resources/modules/org/keycloak/keycloak-as7-server-subsystem/main/server-war/WEB-INF/jboss-deployment-structure.xml
@@ -36,8 +36,6 @@
             <module name="org.keycloak.keycloak-model-mongo" services="import"/>
             <module name="org.keycloak.keycloak-model-file" services="import"/>
             <module name="org.keycloak.keycloak-model-sessions-infinispan" services="import"/>
-            <module name="org.keycloak.keycloak-model-sessions-jpa" services="import"/>
-            <module name="org.keycloak.keycloak-model-sessions-mongo" services="import"/>
             <module name="org.keycloak.keycloak-saml-protocol" services="import"/>
             <module name="org.keycloak.keycloak-services" export="true" services="import"/>
             <module name="org.keycloak.keycloak-social-core" services="import"/>
diff --git a/distribution/server-overlay/eap6/eap6-server-modules/src/main/resources/modules/org/keycloak/keycloak-services/main/module.xml b/distribution/server-overlay/eap6/eap6-server-modules/src/main/resources/modules/org/keycloak/keycloak-services/main/module.xml
index 337a5a1..64915d3 100755
--- a/distribution/server-overlay/eap6/eap6-server-modules/src/main/resources/modules/org/keycloak/keycloak-services/main/module.xml
+++ b/distribution/server-overlay/eap6/eap6-server-modules/src/main/resources/modules/org/keycloak/keycloak-services/main/module.xml
@@ -46,8 +46,6 @@
         <module name="org.keycloak.keycloak-model-mongo" services="import"/>
         <module name="org.keycloak.keycloak-model-file" services="import"/>
         <module name="org.keycloak.keycloak-model-sessions-infinispan" services="import"/>
-        <module name="org.keycloak.keycloak-model-sessions-jpa" services="import"/>
-        <module name="org.keycloak.keycloak-model-sessions-mongo" services="import"/>
 
         <module name="org.keycloak.keycloak-saml-core" services="import"/>
         <module name="org.keycloak.keycloak-saml-protocol" services="import"/>
diff --git a/docbook/reference/en/en-US/modules/MigrationFromOlderVersions.xml b/docbook/reference/en/en-US/modules/MigrationFromOlderVersions.xml
index 8b4d6e5..a49d432 100755
--- a/docbook/reference/en/en-US/modules/MigrationFromOlderVersions.xml
+++ b/docbook/reference/en/en-US/modules/MigrationFromOlderVersions.xml
@@ -82,15 +82,26 @@
         <section>
             <title>Migrating to 1.5.0.Final</title>
             <simplesect>
-                <title>Infinispan set to default cache and user session providers</title>
+                <title>Realm and User cache providers</title>
                 <para>
-                    Infinispan is now the default cache and user session provider.
+                    Infinispan is now the default and only realm and user cache providers. In non-clustered mode a local Infinispan cache is used. We've also removed our
+                    custom in-memory cache and the no cache providers. If you have realmCache or userCache set in keycloak-server.json to mem or none please
+                    remove these. As Infinispan is the only provider there's no longer any need for the realmCache and userCache objects so these can
+                    be removed.
                 </para>
             </simplesect>
             <simplesect>
-                <title>Mem user session provider</title>
+                <title>Uses Session providers</title>
                 <para>
-                    The mem user session provider has been removed. Instead the Infinispan user session provider with a local cache should be used.
+                    Infinispan is now the default and only user session provider. In non-clustered mode a local Infinispan cache is used. We've also removed the JPA
+                    and Mongo user session providers. If you have userSession set in keycloak-server.json to mem, jpa or mongo please
+                    remove it. As Infinispan is the only provider there's no longer any need for the userSession object so it can
+                    be removed.
+                </para>
+                <para>
+                    For anyone that wants to achieve increased durability of user sessions this can be achieved by configuring the user session cache with
+                    more than one owner or use a replicated cache. It's also possible to configure Infinispan to persist caches, although that would have
+                    impacts on performance.
                 </para>
             </simplesect>
         </section>
diff --git a/model/invalidation-cache/infinispan/src/main/java/org/keycloak/models/cache/infinispan/InfinispanCacheRealmProviderFactory.java b/model/invalidation-cache/infinispan/src/main/java/org/keycloak/models/cache/infinispan/InfinispanCacheRealmProviderFactory.java
index dc571e7..4b96241 100755
--- a/model/invalidation-cache/infinispan/src/main/java/org/keycloak/models/cache/infinispan/InfinispanCacheRealmProviderFactory.java
+++ b/model/invalidation-cache/infinispan/src/main/java/org/keycloak/models/cache/infinispan/InfinispanCacheRealmProviderFactory.java
@@ -7,7 +7,6 @@ import org.keycloak.models.KeycloakSession;
 import org.keycloak.models.KeycloakSessionFactory;
 import org.keycloak.models.cache.CacheRealmProvider;
 import org.keycloak.models.cache.CacheRealmProviderFactory;
-import org.keycloak.models.cache.DefaultCacheRealmProvider;
 import org.keycloak.models.cache.RealmCache;
 
 import java.util.concurrent.ConcurrentHashMap;
diff --git a/model/invalidation-cache/infinispan/src/main/java/org/keycloak/models/cache/infinispan/InfinispanCacheUserProviderFactory.java b/model/invalidation-cache/infinispan/src/main/java/org/keycloak/models/cache/infinispan/InfinispanCacheUserProviderFactory.java
index 30f4f43..b046efc 100755
--- a/model/invalidation-cache/infinispan/src/main/java/org/keycloak/models/cache/infinispan/InfinispanCacheUserProviderFactory.java
+++ b/model/invalidation-cache/infinispan/src/main/java/org/keycloak/models/cache/infinispan/InfinispanCacheUserProviderFactory.java
@@ -12,7 +12,6 @@ import org.keycloak.models.KeycloakSession;
 import org.keycloak.models.KeycloakSessionFactory;
 import org.keycloak.models.cache.CacheUserProvider;
 import org.keycloak.models.cache.CacheUserProviderFactory;
-import org.keycloak.models.cache.DefaultCacheUserProvider;
 import org.keycloak.models.cache.entities.CachedUser;
 
 import java.util.concurrent.ConcurrentHashMap;
diff --git a/model/jpa/src/main/java/org/keycloak/models/jpa/entities/ProtocolMapperEntity.java b/model/jpa/src/main/java/org/keycloak/models/jpa/entities/ProtocolMapperEntity.java
index 54872d8..6098df1 100755
--- a/model/jpa/src/main/java/org/keycloak/models/jpa/entities/ProtocolMapperEntity.java
+++ b/model/jpa/src/main/java/org/keycloak/models/jpa/entities/ProtocolMapperEntity.java
@@ -37,8 +37,8 @@ public class ProtocolMapperEntity {
     protected String consentText;
 
     @ElementCollection
-    @MapKeyColumn(name="name")
-    @Column(name="value")
+    @MapKeyColumn(name="NAME")
+    @Column(name="VALUE")
     @CollectionTable(name="PROTOCOL_MAPPER_CONFIG", joinColumns={ @JoinColumn(name="PROTOCOL_MAPPER_ID") })
     private Map<String, String> config;
 

model/pom.xml 2(+0 -2)

diff --git a/model/pom.xml b/model/pom.xml
index 6b70f5a..de7e486 100755
--- a/model/pom.xml
+++ b/model/pom.xml
@@ -30,8 +30,6 @@
         <module>jpa</module>
         <module>mongo</module>
         <module>file</module>
-        <module>sessions-jpa</module>
-        <module>sessions-mongo</module>
         <module>sessions-infinispan</module>
     </modules>
 </project>

pom.xml 10(+0 -10)

diff --git a/pom.xml b/pom.xml
index a504455..e5d04b3 100755
--- a/pom.xml
+++ b/pom.xml
@@ -947,16 +947,6 @@
             </dependency>
             <dependency>
                 <groupId>org.keycloak</groupId>
-                <artifactId>keycloak-model-sessions-jpa</artifactId>
-                <version>${project.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.keycloak</groupId>
-                <artifactId>keycloak-model-sessions-mongo</artifactId>
-                <version>${project.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.keycloak</groupId>
                 <artifactId>launcher</artifactId>
                 <version>${project.version}</version>
             </dependency>
diff --git a/testsuite/integration/pom.xml b/testsuite/integration/pom.xml
index 91449c7..3653fd9 100755
--- a/testsuite/integration/pom.xml
+++ b/testsuite/integration/pom.xml
@@ -340,7 +340,6 @@
                                 <keycloak.realm.provider>jpa</keycloak.realm.provider>
                                 <keycloak.user.provider>jpa</keycloak.user.provider>
                                 <keycloak.eventsStore.provider>jpa</keycloak.eventsStore.provider>
-                                <keycloak.userSessions.provider>jpa</keycloak.userSessions.provider>
 
                                 <keycloak.liquibase.logging.level>debug</keycloak.liquibase.logging.level>
                             </systemPropertyVariables>
@@ -405,7 +404,6 @@
                                         <keycloak.realm.provider>mongo</keycloak.realm.provider>
                                         <keycloak.user.provider>mongo</keycloak.user.provider>
                                         <keycloak.eventsStore.provider>mongo</keycloak.eventsStore.provider>
-                                        <keycloak.userSessions.provider>mongo</keycloak.userSessions.provider>
                                         <keycloak.connectionsMongo.host>${keycloak.connectionsMongo.host}</keycloak.connectionsMongo.host>
                                         <keycloak.connectionsMongo.port>${keycloak.connectionsMongo.port}</keycloak.connectionsMongo.port>
                                         <keycloak.connectionsMongo.db>${keycloak.connectionsMongo.db}</keycloak.connectionsMongo.db>
@@ -454,26 +452,6 @@
 
         </profile>
 
-        <profile>
-            <id>infinispan</id>
-
-            <build>
-                <plugins>
-                    <plugin>
-                        <groupId>org.apache.maven.plugins</groupId>
-                        <artifactId>maven-surefire-plugin</artifactId>
-                        <configuration>
-                            <systemPropertyVariables>
-                                <keycloak.realm.cache.provider>infinispan</keycloak.realm.cache.provider>
-                                <keycloak.user.cache.provider>infinispan</keycloak.user.cache.provider>
-                                <keycloak.userSessions.provider>infinispan</keycloak.userSessions.provider>
-                            </systemPropertyVariables>
-                        </configuration>
-                    </plugin>
-                </plugins>
-            </build>
-        </profile>
-
         <!-- MySQL -->
         <profile>
             <activation>
diff --git a/testsuite/integration/src/test/java/org/keycloak/testsuite/model/CacheTest.java b/testsuite/integration/src/test/java/org/keycloak/testsuite/model/CacheTest.java
index 2b05cb9..5bc3556 100755
--- a/testsuite/integration/src/test/java/org/keycloak/testsuite/model/CacheTest.java
+++ b/testsuite/integration/src/test/java/org/keycloak/testsuite/model/CacheTest.java
@@ -6,6 +6,7 @@ import org.junit.Assert;
 import org.junit.ClassRule;
 import org.junit.Test;
 import org.keycloak.models.*;
+import org.keycloak.models.cache.infinispan.RealmAdapter;
 import org.keycloak.testsuite.rule.KeycloakRule;
 
 import static org.junit.Assert.assertNotNull;
@@ -45,7 +46,7 @@ public class CacheTest {
                 }
             }
 
-            Assert.assertTrue(realm instanceof org.keycloak.models.cache.RealmAdapter);
+            Assert.assertTrue(realm instanceof RealmAdapter);
             realm.setAccessCodeLifespanLogin(200);
             ClientModel testApp = realm.getClientByClientId("test-app");
             assertNotNull(testApp);
diff --git a/testsuite/integration/src/test/resources/META-INF/keycloak-server.json b/testsuite/integration/src/test/resources/META-INF/keycloak-server.json
index c760152..cd56ce0 100755
--- a/testsuite/integration/src/test/resources/META-INF/keycloak-server.json
+++ b/testsuite/integration/src/test/resources/META-INF/keycloak-server.json
@@ -22,21 +22,6 @@
         "provider": "${keycloak.user.provider:jpa}"
     },
 
-    "userSessions": {
-        "provider" : "${keycloak.userSessions.provider:infinispan}"
-    },
-
-    "realmCache": {
-        "provider": "${keycloak.realm.cache.provider:infinispan}"
-    },
-
-    "userCache": {
-        "provider": "${keycloak.user.cache.provider:infinispan}",
-        "mem": {
-            "maxSize": 20000
-        }
-    },
-
     "timer": {
         "provider": "basic"
     },
@@ -51,18 +36,6 @@
         }
     },
 
-    "login": {
-        "provider": "freemarker"
-    },
-
-    "account": {
-        "provider": "freemarker"
-    },
-
-    "email": {
-        "provider": "freemarker"
-    },
-
     "scheduled": {
         "interval": 900
     },
diff --git a/testsuite/jetty/jetty81/pom.xml b/testsuite/jetty/jetty81/pom.xml
index c9024ff..840282e 100755
--- a/testsuite/jetty/jetty81/pom.xml
+++ b/testsuite/jetty/jetty81/pom.xml
@@ -322,7 +322,6 @@
                                 <keycloak.realm.provider>jpa</keycloak.realm.provider>
                                 <keycloak.user.provider>jpa</keycloak.user.provider>
                                 <keycloak.eventStore.provider>jpa</keycloak.eventStore.provider>
-                                <keycloak.userSessions.provider>jpa</keycloak.userSessions.provider>
                             </systemPropertyVariables>
                         </configuration>
                     </plugin>
@@ -360,7 +359,6 @@
                                         <keycloak.realm.provider>mongo</keycloak.realm.provider>
                                         <keycloak.user.provider>mongo</keycloak.user.provider>
                                         <keycloak.audit.provider>mongo</keycloak.audit.provider>
-                                        <keycloak.userSessions.provider>mongo</keycloak.userSessions.provider>
                                         <keycloak.connectionsMongo.host>${keycloak.connectionsMongo.host}</keycloak.connectionsMongo.host>
                                         <keycloak.connectionsMongo.port>${keycloak.connectionsMongo.port}</keycloak.connectionsMongo.port>
                                         <keycloak.connectionsMongo.db>${keycloak.connectionsMongo.db}</keycloak.connectionsMongo.db>
@@ -410,26 +408,6 @@
 
         </profile>
 
-        <profile>
-            <id>infinispan</id>
-
-            <build>
-                <plugins>
-                    <plugin>
-                        <groupId>org.apache.maven.plugins</groupId>
-                        <artifactId>maven-surefire-plugin</artifactId>
-                        <configuration>
-                            <systemPropertyVariables>
-                                <keycloak.realm.cache.provider>infinispan</keycloak.realm.cache.provider>
-                                <keycloak.user.cache.provider>infinispan</keycloak.user.cache.provider>
-                                <keycloak.userSessions.provider>infinispan</keycloak.userSessions.provider>
-                            </systemPropertyVariables>
-                        </configuration>
-                    </plugin>
-                </plugins>
-            </build>
-        </profile>
-
         <!-- MySQL -->
         <profile>
             <activation>
diff --git a/testsuite/jetty/jetty91/pom.xml b/testsuite/jetty/jetty91/pom.xml
index 2456de5..fea7a82 100755
--- a/testsuite/jetty/jetty91/pom.xml
+++ b/testsuite/jetty/jetty91/pom.xml
@@ -322,7 +322,6 @@
                                 <keycloak.realm.provider>jpa</keycloak.realm.provider>
                                 <keycloak.user.provider>jpa</keycloak.user.provider>
                                 <keycloak.eventStore.provider>jpa</keycloak.eventStore.provider>
-                                <keycloak.userSessions.provider>jpa</keycloak.userSessions.provider>
                             </systemPropertyVariables>
                         </configuration>
                     </plugin>
@@ -360,7 +359,6 @@
                                         <keycloak.realm.provider>mongo</keycloak.realm.provider>
                                         <keycloak.user.provider>mongo</keycloak.user.provider>
                                         <keycloak.audit.provider>mongo</keycloak.audit.provider>
-                                        <keycloak.userSessions.provider>mongo</keycloak.userSessions.provider>
                                         <keycloak.connectionsMongo.host>${keycloak.connectionsMongo.host}</keycloak.connectionsMongo.host>
                                         <keycloak.connectionsMongo.port>${keycloak.connectionsMongo.port}</keycloak.connectionsMongo.port>
                                         <keycloak.connectionsMongo.db>${keycloak.connectionsMongo.db}</keycloak.connectionsMongo.db>
@@ -410,26 +408,6 @@
 
         </profile>
 
-        <profile>
-            <id>infinispan</id>
-
-            <build>
-                <plugins>
-                    <plugin>
-                        <groupId>org.apache.maven.plugins</groupId>
-                        <artifactId>maven-surefire-plugin</artifactId>
-                        <configuration>
-                            <systemPropertyVariables>
-                                <keycloak.realm.cache.provider>infinispan</keycloak.realm.cache.provider>
-                                <keycloak.user.cache.provider>infinispan</keycloak.user.cache.provider>
-                                <keycloak.userSessions.provider>infinispan</keycloak.userSessions.provider>
-                            </systemPropertyVariables>
-                        </configuration>
-                    </plugin>
-                </plugins>
-            </build>
-        </profile>
-
         <!-- MySQL -->
         <profile>
             <activation>
diff --git a/testsuite/jetty/jetty92/pom.xml b/testsuite/jetty/jetty92/pom.xml
index 439365b..0afd207 100755
--- a/testsuite/jetty/jetty92/pom.xml
+++ b/testsuite/jetty/jetty92/pom.xml
@@ -329,7 +329,6 @@
                                 <keycloak.realm.provider>jpa</keycloak.realm.provider>
                                 <keycloak.user.provider>jpa</keycloak.user.provider>
                                 <keycloak.eventStore.provider>jpa</keycloak.eventStore.provider>
-                                <keycloak.userSessions.provider>jpa</keycloak.userSessions.provider>
                             </systemPropertyVariables>
                         </configuration>
                     </plugin>
@@ -367,7 +366,6 @@
                                         <keycloak.realm.provider>mongo</keycloak.realm.provider>
                                         <keycloak.user.provider>mongo</keycloak.user.provider>
                                         <keycloak.audit.provider>mongo</keycloak.audit.provider>
-                                        <keycloak.userSessions.provider>mongo</keycloak.userSessions.provider>
                                         <keycloak.connectionsMongo.host>${keycloak.connectionsMongo.host}</keycloak.connectionsMongo.host>
                                         <keycloak.connectionsMongo.port>${keycloak.connectionsMongo.port}</keycloak.connectionsMongo.port>
                                         <keycloak.connectionsMongo.db>${keycloak.connectionsMongo.db}</keycloak.connectionsMongo.db>
@@ -417,26 +415,6 @@
 
         </profile>
 
-        <profile>
-            <id>infinispan</id>
-
-            <build>
-                <plugins>
-                    <plugin>
-                        <groupId>org.apache.maven.plugins</groupId>
-                        <artifactId>maven-surefire-plugin</artifactId>
-                        <configuration>
-                            <systemPropertyVariables>
-                                <keycloak.realm.cache.provider>infinispan</keycloak.realm.cache.provider>
-                                <keycloak.user.cache.provider>infinispan</keycloak.user.cache.provider>
-                                <keycloak.userSessions.provider>infinispan</keycloak.userSessions.provider>
-                            </systemPropertyVariables>
-                        </configuration>
-                    </plugin>
-                </plugins>
-            </build>
-        </profile>
-
         <!-- MySQL -->
         <profile>
             <activation>
diff --git a/testsuite/proxy/pom.xml b/testsuite/proxy/pom.xml
index b4e7383..d195398 100755
--- a/testsuite/proxy/pom.xml
+++ b/testsuite/proxy/pom.xml
@@ -306,7 +306,6 @@
                                 <keycloak.realm.provider>jpa</keycloak.realm.provider>
                                 <keycloak.user.provider>jpa</keycloak.user.provider>
                                 <keycloak.eventStore.provider>jpa</keycloak.eventStore.provider>
-                                <keycloak.userSessions.provider>jpa</keycloak.userSessions.provider>
                             </systemPropertyVariables>
                         </configuration>
                     </plugin>
@@ -344,7 +343,6 @@
                                         <keycloak.realm.provider>mongo</keycloak.realm.provider>
                                         <keycloak.user.provider>mongo</keycloak.user.provider>
                                         <keycloak.audit.provider>mongo</keycloak.audit.provider>
-                                        <keycloak.userSessions.provider>mongo</keycloak.userSessions.provider>
                                         <keycloak.connectionsMongo.host>${keycloak.connectionsMongo.host}</keycloak.connectionsMongo.host>
                                         <keycloak.connectionsMongo.port>${keycloak.connectionsMongo.port}</keycloak.connectionsMongo.port>
                                         <keycloak.connectionsMongo.db>${keycloak.connectionsMongo.db}</keycloak.connectionsMongo.db>
@@ -394,26 +392,6 @@
 
         </profile>
 
-        <profile>
-            <id>infinispan</id>
-
-            <build>
-                <plugins>
-                    <plugin>
-                        <groupId>org.apache.maven.plugins</groupId>
-                        <artifactId>maven-surefire-plugin</artifactId>
-                        <configuration>
-                            <systemPropertyVariables>
-                                <keycloak.realm.cache.provider>infinispan</keycloak.realm.cache.provider>
-                                <keycloak.user.cache.provider>infinispan</keycloak.user.cache.provider>
-                                <keycloak.userSessions.provider>infinispan</keycloak.userSessions.provider>
-                            </systemPropertyVariables>
-                        </configuration>
-                    </plugin>
-                </plugins>
-            </build>
-        </profile>
-
         <!-- MySQL -->
         <profile>
             <activation>
diff --git a/testsuite/tomcat6/pom.xml b/testsuite/tomcat6/pom.xml
index 9468d3a..92a4953 100755
--- a/testsuite/tomcat6/pom.xml
+++ b/testsuite/tomcat6/pom.xml
@@ -104,10 +104,6 @@
            <groupId>org.keycloak</groupId>
            <artifactId>keycloak-tomcat6-adapter</artifactId>
        </dependency>
-       <dependency>
-            <groupId>org.jboss.logging</groupId>
-            <artifactId>jboss-logging</artifactId>
-        </dependency>
         <dependency>
             <groupId>io.undertow</groupId>
             <artifactId>undertow-servlet</artifactId>
@@ -303,7 +299,6 @@
                                 <keycloak.realm.provider>jpa</keycloak.realm.provider>
                                 <keycloak.user.provider>jpa</keycloak.user.provider>
                                 <keycloak.eventStore.provider>jpa</keycloak.eventStore.provider>
-                                <keycloak.userSessions.provider>jpa</keycloak.userSessions.provider>
                             </systemPropertyVariables>
                         </configuration>
                     </plugin>
@@ -341,7 +336,6 @@
                                         <keycloak.realm.provider>mongo</keycloak.realm.provider>
                                         <keycloak.user.provider>mongo</keycloak.user.provider>
                                         <keycloak.audit.provider>mongo</keycloak.audit.provider>
-                                        <keycloak.userSessions.provider>mongo</keycloak.userSessions.provider>
                                         <keycloak.connectionsMongo.host>${keycloak.connectionsMongo.host}</keycloak.connectionsMongo.host>
                                         <keycloak.connectionsMongo.port>${keycloak.connectionsMongo.port}</keycloak.connectionsMongo.port>
                                         <keycloak.connectionsMongo.db>${keycloak.connectionsMongo.db}</keycloak.connectionsMongo.db>
@@ -391,26 +385,6 @@
 
         </profile>
 
-        <profile>
-            <id>infinispan</id>
-
-            <build>
-                <plugins>
-                    <plugin>
-                        <groupId>org.apache.maven.plugins</groupId>
-                        <artifactId>maven-surefire-plugin</artifactId>
-                        <configuration>
-                            <systemPropertyVariables>
-                                <keycloak.realm.cache.provider>infinispan</keycloak.realm.cache.provider>
-                                <keycloak.user.cache.provider>infinispan</keycloak.user.cache.provider>
-                                <keycloak.userSessions.provider>infinispan</keycloak.userSessions.provider>
-                            </systemPropertyVariables>
-                        </configuration>
-                    </plugin>
-                </plugins>
-            </build>
-        </profile>
-
         <!-- MySQL -->
         <profile>
             <activation>
diff --git a/testsuite/tomcat7/pom.xml b/testsuite/tomcat7/pom.xml
index 9b3b0a8..f9dc4f3 100755
--- a/testsuite/tomcat7/pom.xml
+++ b/testsuite/tomcat7/pom.xml
@@ -302,7 +302,6 @@
                                 <keycloak.realm.provider>jpa</keycloak.realm.provider>
                                 <keycloak.user.provider>jpa</keycloak.user.provider>
                                 <keycloak.eventStore.provider>jpa</keycloak.eventStore.provider>
-                                <keycloak.userSessions.provider>jpa</keycloak.userSessions.provider>
                             </systemPropertyVariables>
                         </configuration>
                     </plugin>
@@ -340,7 +339,6 @@
                                         <keycloak.realm.provider>mongo</keycloak.realm.provider>
                                         <keycloak.user.provider>mongo</keycloak.user.provider>
                                         <keycloak.audit.provider>mongo</keycloak.audit.provider>
-                                        <keycloak.userSessions.provider>mongo</keycloak.userSessions.provider>
                                         <keycloak.connectionsMongo.host>${keycloak.connectionsMongo.host}</keycloak.connectionsMongo.host>
                                         <keycloak.connectionsMongo.port>${keycloak.connectionsMongo.port}</keycloak.connectionsMongo.port>
                                         <keycloak.connectionsMongo.db>${keycloak.connectionsMongo.db}</keycloak.connectionsMongo.db>
@@ -390,26 +388,6 @@
 
         </profile>
 
-        <profile>
-            <id>infinispan</id>
-
-            <build>
-                <plugins>
-                    <plugin>
-                        <groupId>org.apache.maven.plugins</groupId>
-                        <artifactId>maven-surefire-plugin</artifactId>
-                        <configuration>
-                            <systemPropertyVariables>
-                                <keycloak.realm.cache.provider>infinispan</keycloak.realm.cache.provider>
-                                <keycloak.user.cache.provider>infinispan</keycloak.user.cache.provider>
-                                <keycloak.userSessions.provider>infinispan</keycloak.userSessions.provider>
-                            </systemPropertyVariables>
-                        </configuration>
-                    </plugin>
-                </plugins>
-            </build>
-        </profile>
-
         <!-- MySQL -->
         <profile>
             <activation>
diff --git a/testsuite/tomcat8/pom.xml b/testsuite/tomcat8/pom.xml
index 8ede611..30cbf0d 100755
--- a/testsuite/tomcat8/pom.xml
+++ b/testsuite/tomcat8/pom.xml
@@ -301,7 +301,6 @@
                                 <keycloak.realm.provider>jpa</keycloak.realm.provider>
                                 <keycloak.user.provider>jpa</keycloak.user.provider>
                                 <keycloak.eventStore.provider>jpa</keycloak.eventStore.provider>
-                                <keycloak.userSessions.provider>jpa</keycloak.userSessions.provider>
                             </systemPropertyVariables>
                         </configuration>
                     </plugin>
@@ -339,7 +338,6 @@
                                         <keycloak.realm.provider>mongo</keycloak.realm.provider>
                                         <keycloak.user.provider>mongo</keycloak.user.provider>
                                         <keycloak.audit.provider>mongo</keycloak.audit.provider>
-                                        <keycloak.userSessions.provider>mongo</keycloak.userSessions.provider>
                                         <keycloak.connectionsMongo.host>${keycloak.connectionsMongo.host}</keycloak.connectionsMongo.host>
                                         <keycloak.connectionsMongo.port>${keycloak.connectionsMongo.port}</keycloak.connectionsMongo.port>
                                         <keycloak.connectionsMongo.db>${keycloak.connectionsMongo.db}</keycloak.connectionsMongo.db>
@@ -389,26 +387,6 @@
 
         </profile>
 
-        <profile>
-            <id>infinispan</id>
-
-            <build>
-                <plugins>
-                    <plugin>
-                        <groupId>org.apache.maven.plugins</groupId>
-                        <artifactId>maven-surefire-plugin</artifactId>
-                        <configuration>
-                            <systemPropertyVariables>
-                                <keycloak.realm.cache.provider>infinispan</keycloak.realm.cache.provider>
-                                <keycloak.user.cache.provider>infinispan</keycloak.user.cache.provider>
-                                <keycloak.userSessions.provider>infinispan</keycloak.userSessions.provider>
-                            </systemPropertyVariables>
-                        </configuration>
-                    </plugin>
-                </plugins>
-            </build>
-        </profile>
-
         <!-- MySQL -->
         <profile>
             <activation>
diff --git a/testsuite/wildfly/pom.xml b/testsuite/wildfly/pom.xml
index 8f494bc..d91657e 100644
--- a/testsuite/wildfly/pom.xml
+++ b/testsuite/wildfly/pom.xml
@@ -326,7 +326,6 @@
                                 <keycloak.realm.provider>jpa</keycloak.realm.provider>
                                 <keycloak.user.provider>jpa</keycloak.user.provider>
                                 <keycloak.eventStore.provider>jpa</keycloak.eventStore.provider>
-                                <keycloak.userSessions.provider>jpa</keycloak.userSessions.provider>
                             </systemPropertyVariables>
                         </configuration>
                     </plugin>
@@ -364,7 +363,6 @@
                                         <keycloak.realm.provider>mongo</keycloak.realm.provider>
                                         <keycloak.user.provider>mongo</keycloak.user.provider>
                                         <keycloak.audit.provider>mongo</keycloak.audit.provider>
-                                        <keycloak.userSessions.provider>mongo</keycloak.userSessions.provider>
                                         <keycloak.connectionsMongo.host>${keycloak.connectionsMongo.host}</keycloak.connectionsMongo.host>
                                         <keycloak.connectionsMongo.port>${keycloak.connectionsMongo.port}</keycloak.connectionsMongo.port>
                                         <keycloak.connectionsMongo.db>${keycloak.connectionsMongo.db}</keycloak.connectionsMongo.db>
@@ -414,26 +412,6 @@
 
         </profile>
 
-        <profile>
-            <id>infinispan</id>
-
-            <build>
-                <plugins>
-                    <plugin>
-                        <groupId>org.apache.maven.plugins</groupId>
-                        <artifactId>maven-surefire-plugin</artifactId>
-                        <configuration>
-                            <systemPropertyVariables>
-                                <keycloak.realm.cache.provider>infinispan</keycloak.realm.cache.provider>
-                                <keycloak.user.cache.provider>infinispan</keycloak.user.cache.provider>
-                                <keycloak.userSessions.provider>infinispan</keycloak.userSessions.provider>
-                            </systemPropertyVariables>
-                        </configuration>
-                    </plugin>
-                </plugins>
-            </build>
-        </profile>
-
         <!-- MySQL -->
         <profile>
             <activation>