From a76065f49a37c6955f6d87f90a9bd9f55732c1cd Mon Sep 17 00:00:00 2001
From: Fabian PK <fabian.peller-konrad@kit.edu>
Date: Tue, 27 Jul 2021 16:22:01 +0200
Subject: [PATCH] updates to ltm

---
 .../libraries/armem/core/longtermmemory/Memory.cpp       | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/source/RobotAPI/libraries/armem/core/longtermmemory/Memory.cpp b/source/RobotAPI/libraries/armem/core/longtermmemory/Memory.cpp
index ab894ea64..570a86158 100644
--- a/source/RobotAPI/libraries/armem/core/longtermmemory/Memory.cpp
+++ b/source/RobotAPI/libraries/armem/core/longtermmemory/Memory.cpp
@@ -13,6 +13,7 @@ namespace armarx::armem::ltm
     bool Memory::checkConnection() const
     {
         // Check connection:
+        ARMARX_INFO << "Checking connection";
         if (!MongoDBConnectionManager::ConnectionIsValid(dbsettings))
         {
             ARMARX_WARNING << deactivateSpam("ConnectionIsNotValid")
@@ -22,7 +23,6 @@ namespace armarx::armem::ltm
                            << "\n\n";
             return false;
         }
-        ARMARX_INFO << "Checking connection";
         return true;
     }
 
@@ -70,7 +70,14 @@ namespace armarx::armem::ltm
         ARMARX_INFO << "(Re)Establishing connection to: " << dbsettings.toString();
         _container.clear();
 
+        ARMARX_TRACE;
         mongocxx::client& client = MongoDBConnectionManager::EstablishConnection(dbsettings);
+        ARMARX_TRACE;
+        if (not(bool) client)
+        {
+            ARMARX_ERROR << "A client has died. Could not reload.";
+            return;
+        }
         mongocxx::database db = client[dbsettings.database];
         mongocxx::collection coll = db[id().str()];
 
-- 
GitLab