diff --git a/radicale_storage_etesync/etesync_cache.py b/radicale_storage_etesync/etesync_cache.py
index <HASH>..<HASH> 100644
--- a/radicale_storage_etesync/etesync_cache.py
+++ b/radicale_storage_etesync/etesync_cache.py
@@ -27,6 +27,8 @@ class EteSyncCache:
             if user in self._etesync_cache:
                 etesync = self._etesync_cache[user]
                 if (etesync.auth_token, etesync.cipher_key) == self.creds.get(user):
+                    # FIXME: Reinit the etesync db - should use the official reinit function once released
+                    etesync._set_db(etesync._database)
                     return etesync, False
                 else:
                     del self._etesync_cache[user]
@@ -47,8 +49,6 @@ class EteSyncCache:
         etesync = api.EteSync(user, auth_token, remote=self.remote_url, db_path=db_path)
         etesync.cipher_key = cipher_key
 
-        if False:
-            # XXX: Remove the cache for now, it doesn't save us much and is racey. See commit message
-            self._etesync_cache[user] = etesync
+        self._etesync_cache[user] = etesync
 
         return etesync, True
Bring back EteSync cache

Removing it broke request throttling, and anyhow, it's better to have
it.
It now works because we reinit the EteSync object.

In addition to the reinit, this also reverts commit
<I>ab<I>b0feab<I>eca<I>e<I>a<I>d<I>b1.