diff --git a/src/cutecoin/models/identities.py b/src/cutecoin/models/identities.py
index 54567a0f45d38660bfb175cef6cbb91507467ab0..9a361b0728ce99825d266acd37e6f0af345fb82f 100644
--- a/src/cutecoin/models/identities.py
+++ b/src/cutecoin/models/identities.py
@@ -129,11 +129,10 @@ class IdentitiesTableModel(QAbstractTableModel):
         logging.debug("Refresh {0} identities".format(len(identities)))
         self.beginResetModel()
         self.identities_data = []
-        self.endResetModel()
-        self.beginResetModel()
+        identities_data = []
         for identity in identities:
             data = yield from self.identity_data(identity)
-            self.identities_data.append(data)
+            identities_data.append(data)
         if len(identities) > 0:
             try:
                 parameters = yield from self.community.parameters()
@@ -141,6 +140,7 @@ class IdentitiesTableModel(QAbstractTableModel):
             except NoPeerAvailable as e:
                 logging.debug(str(e))
                 self._sig_validity = 0
+        self.identities_data = identities_data
         self.endResetModel()
 
     def rowCount(self, parent):
diff --git a/src/cutecoin/models/network.py b/src/cutecoin/models/network.py
index af360c5a089154ec817edca8abb1932e5eafb83e..8c33d71b139e3e38bdaad76c0dc6bbf6d6b5c47b 100644
--- a/src/cutecoin/models/network.py
+++ b/src/cutecoin/models/network.py
@@ -11,7 +11,7 @@ from PyQt5.QtCore import QAbstractTableModel, Qt, QVariant, QSortFilterProxyMode
 from PyQt5.QtGui import QColor, QFont
 
 from ..tools.exceptions import NoPeerAvailable
-from ..tools.decorators import asyncify
+from ..tools.decorators import asyncify, once_at_a_time
 from cutecoin.core.net.node import Node
 
 
@@ -178,12 +178,12 @@ class NetworkTableModel(QAbstractTableModel):
     def refresh_nodes(self):
         self.beginResetModel()
         self.nodes_data = []
-        self.endResetModel()
-        self.beginResetModel()
+        nodes_data = []
         if self.community:
             for node in self.community.network.nodes:
                 data = yield from self.data_node(node)
-                self.nodes_data.append(data)
+                nodes_data.append(data)
+        self.nodes_data = nodes_data
         self.endResetModel()
 
     def rowCount(self, parent):
diff --git a/src/cutecoin/models/txhistory.py b/src/cutecoin/models/txhistory.py
index 4d9dfe64a1bea1ca788a4fbb175c2f250a5c6d98..ac0af80427fa55fc54cfa20893d321173da551dd 100644
--- a/src/cutecoin/models/txhistory.py
+++ b/src/cutecoin/models/txhistory.py
@@ -289,6 +289,7 @@ class HistoryTableModel(QAbstractTableModel):
     def refresh_transfers(self):
         self.beginResetModel()
         self.transfers_data = []
+        transfers_data = []
         if self.community:
             for transfer in self.transfers():
                 data = None
@@ -300,13 +301,14 @@ class HistoryTableModel(QAbstractTableModel):
                 elif type(transfer) is dict:
                     data = yield from self.data_dividend(transfer)
                 if data:
-                    self.transfers_data.append(data)
+                    transfers_data.append(data)
                 try:
                     members_pubkeys = yield from self.community.members_pubkeys()
                     self._max_validations = self.community.network.fork_window(members_pubkeys) + 1
                 except NoPeerAvailable as e:
                     logging.debug(str(e))
                     self._max_validations = 0
+        self.transfers_data = transfers_data
         self.endResetModel()
 
     def max_validations(self):