diff --git a/app/lib/dal/fileDAL.ts b/app/lib/dal/fileDAL.ts
index de828427156bd9d8ae6824d618778fcf5b3d13bd..138c48ee32f9a543ae5e6af82138a1b51c212aee 100644
--- a/app/lib/dal/fileDAL.ts
+++ b/app/lib/dal/fileDAL.ts
@@ -79,6 +79,8 @@ import {cliprogram} from "../common-libs/programOptions"
 import {DividendDAO, UDSource} from "./indexDAL/abstract/DividendDAO"
 import {LokiDividend} from "./indexDAL/loki/LokiDividend"
 import {HttpSource, HttpUD} from "../../modules/bma/lib/dtos"
+import {GenericDAO} from "./indexDAL/abstract/GenericDAO"
+import {LokiDAO} from "./indexDAL/loki/LokiDAO"
 
 const readline = require('readline')
 const indexer = require('../indexer').Indexer
@@ -133,6 +135,8 @@ export class FileDAL {
   cindexDAL:CIndexDAO
   dividendDAL:DividendDAO
   newDals:{ [k:string]: Initiable }
+  private dals:(BlockchainArchiveDAO<any>|PeerDAO|WalletDAO|GenericDAO<any>)[]
+  private daos:LokiDAO[]
 
   loadConfHook: (conf:ConfDTO) => Promise<void>
   saveConfHook: (conf:ConfDTO) => Promise<ConfDTO>
@@ -187,10 +191,30 @@ export class FileDAL {
     }
   }
 
+  public enableChangesAPI() {
+    this.daos.map(d => d.enableChangesAPI())
+  }
+
+  public disableChangesAPI() {
+    this.daos.map(d => d.disableChangesAPI())
+  }
+
   async init(conf:ConfDTO) {
     // Init LokiJS
     await this.loki.loadDatabase()
-    const dals = [
+    this.daos = [
+      this.blockDAL,
+      this.txsDAL,
+      this.peerDAL,
+      this.walletDAL,
+      this.bindexDAL,
+      this.mindexDAL,
+      this.iindexDAL,
+      this.sindexDAL,
+      this.cindexDAL,
+      this.dividendDAL
+    ]
+    this.dals = [
       this.blockDAL,
       this.txsDAL,
       this.peerDAL,
@@ -203,7 +227,7 @@ export class FileDAL {
       this.dividendDAL,
       this.blockchainArchiveDAL,
     ]
-    for (const indexDAL of dals) {
+    for (const indexDAL of this.dals) {
       indexDAL.triggerInit()
     }
     const dalNames = Underscore.keys(this.newDals);
diff --git a/app/lib/dal/indexDAL/abstract/GenericDAO.ts b/app/lib/dal/indexDAL/abstract/GenericDAO.ts
index 12ada2d2819ac5f280283e17b0f5a9f5b874d5c2..ff2fd53c1792209ca125c8ee5f0bf5d718c9ecc0 100644
--- a/app/lib/dal/indexDAL/abstract/GenericDAO.ts
+++ b/app/lib/dal/indexDAL/abstract/GenericDAO.ts
@@ -1,6 +1,7 @@
 import {Initiable} from "../../sqliteDAL/Initiable"
+import {LokiDAO} from "../loki/LokiDAO"
 
-export interface GenericDAO<T> extends Initiable {
+export interface GenericDAO<T> extends Initiable, LokiDAO {
 
   /**
    * Trigger the initialization of the DAO. Called when the underlying DB is ready.
diff --git a/app/lib/dal/indexDAL/abstract/PeerDAO.ts b/app/lib/dal/indexDAL/abstract/PeerDAO.ts
index 6cedd6230aa5a530e51501f9571720a2a0f1a80c..97756b4227a35787eccd1b955568acca7069d98c 100644
--- a/app/lib/dal/indexDAL/abstract/PeerDAO.ts
+++ b/app/lib/dal/indexDAL/abstract/PeerDAO.ts
@@ -1,7 +1,8 @@
 import {Initiable} from "../../sqliteDAL/Initiable"
 import {DBPeer} from "../../../db/DBPeer"
+import {LokiDAO} from "../loki/LokiDAO"
 
-export interface PeerDAO extends Initiable {
+export interface PeerDAO extends Initiable, LokiDAO {
 
   /**
    * Trigger the initialization of the DAO. Called when the underlying DB is ready.
diff --git a/app/lib/dal/indexDAL/abstract/WalletDAO.ts b/app/lib/dal/indexDAL/abstract/WalletDAO.ts
index 4774e6943b9cb849a7f897cbf84d188eb5c49ef5..dfb0d0f50c01bd87a4489e0b28c83a0e04a1e680 100644
--- a/app/lib/dal/indexDAL/abstract/WalletDAO.ts
+++ b/app/lib/dal/indexDAL/abstract/WalletDAO.ts
@@ -1,7 +1,8 @@
 import {Initiable} from "../../sqliteDAL/Initiable"
 import {DBWallet} from "../../../db/DBWallet"
+import {LokiDAO} from "../loki/LokiDAO"
 
-export interface WalletDAO extends Initiable {
+export interface WalletDAO extends Initiable, LokiDAO {
 
   /**
    * Trigger the initialization of the DAO. Called when the underlying DB is ready.
diff --git a/app/lib/dal/indexDAL/loki/LokiCollection.ts b/app/lib/dal/indexDAL/loki/LokiCollection.ts
index 6b22804f8c325be8bdf88b33c83dc561081894d3..515ff9c8c43127d56f1ef98c22f9f167bb9d3950 100644
--- a/app/lib/dal/indexDAL/loki/LokiCollection.ts
+++ b/app/lib/dal/indexDAL/loki/LokiCollection.ts
@@ -1,6 +1,6 @@
 import {LokiChainableFind, LokiCollection} from "./LokiTypes"
 import {NewLogger} from "../../../logger"
-import {getDurationInMicroSeconds, getMicrosecondsTime} from "../../../../ProcessCpuProfiler"
+import {getMicrosecondsTime} from "../../../../ProcessCpuProfiler"
 
 const logger = NewLogger()
 
@@ -35,4 +35,8 @@ export class LokiProxyCollection<T> implements LokiCollection<T> {
   chain(): LokiChainableFind<T> {
     return this.collection.chain()
   }
+
+  setDisableChangesAPI(disable: boolean) {
+    this.collection.setDisableChangesAPI(disable)
+  }
 }
diff --git a/app/lib/dal/indexDAL/loki/LokiCollectionManager.ts b/app/lib/dal/indexDAL/loki/LokiCollectionManager.ts
index 442b3186332130cee5f46ff16f1054a3e7e2a49f..38c696f68dd792dccb49a28876174c6e3caa5d6a 100755
--- a/app/lib/dal/indexDAL/loki/LokiCollectionManager.ts
+++ b/app/lib/dal/indexDAL/loki/LokiCollectionManager.ts
@@ -1,11 +1,12 @@
 import {LokiCollection} from "./LokiTypes"
 import {LokiProxyCollection} from "./LokiCollection"
 import {NewLogger} from "../../../logger"
+import {LokiDAO} from "./LokiDAO"
 import {cliprogram} from "../../../common-libs/programOptions"
 
 const logger = NewLogger()
 
-export abstract class LokiCollectionManager<T> {
+export abstract class LokiCollectionManager<T> implements LokiDAO {
 
   protected collection:LokiCollection<T>
   protected collectionIsInitialized: Promise<void>
@@ -27,6 +28,14 @@ export abstract class LokiCollectionManager<T> {
     this.resolveCollection()
   }
 
+  public enableChangesAPI() {
+    this.collection.setDisableChangesAPI(false)
+  }
+
+  public disableChangesAPI() {
+    this.collection.setDisableChangesAPI(true)
+  }
+
   async init(): Promise<void> {
     await this.collectionIsInitialized
     logger.info('Collection %s ready', this.collectionName)
diff --git a/app/lib/dal/indexDAL/loki/LokiDAO.ts b/app/lib/dal/indexDAL/loki/LokiDAO.ts
new file mode 100644
index 0000000000000000000000000000000000000000..9c0a9ffba823b5eae81b18b3f90d3d76c4c51c23
--- /dev/null
+++ b/app/lib/dal/indexDAL/loki/LokiDAO.ts
@@ -0,0 +1,7 @@
+
+export interface LokiDAO {
+
+  enableChangesAPI(): void
+
+  disableChangesAPI(): void
+}
diff --git a/app/lib/dal/indexDAL/loki/LokiTypes.ts b/app/lib/dal/indexDAL/loki/LokiTypes.ts
index 26150bbe1254d77b0730e7a429b9894c329723d7..4e4f87d1596674911cb68ac34155c9d36ca89902 100644
--- a/app/lib/dal/indexDAL/loki/LokiTypes.ts
+++ b/app/lib/dal/indexDAL/loki/LokiTypes.ts
@@ -12,6 +12,8 @@ export interface LokiCollection<T> {
   find(criterion:{ [t in keyof T|'$or'|'$and']?: any }): T[]
 
   chain(): LokiChainableFind<T>
+
+  setDisableChangesAPI(disable: boolean): void
 }
 
 export interface LokiChainableFind<T> {
diff --git a/app/modules/crawler/index.ts b/app/modules/crawler/index.ts
index 1e4fc8e740b28ce3b7a201b92f1d8c88267a050e..a86cfeb99c49b6bb5c89f02d30e51a28d1186a26 100644
--- a/app/modules/crawler/index.ts
+++ b/app/modules/crawler/index.ts
@@ -54,7 +54,11 @@ export const CrawlerDependency = {
         const syncPromise = remote.sync(upTo, chunkLength)
         return {
           flow: remote,
-          syncPromise: syncPromise
+          syncPromise: (async () => {
+            await server.dal.disableChangesAPI()
+            await syncPromise
+            await server.dal.enableChangesAPI()
+          })()
         };
       },