diff --git a/src/caosdb/transaction.cpp b/src/caosdb/transaction.cpp
index ac64e26609b99e3047fc16f36825aec03ab038af..d7568d8518909ed0d9bf7cb9c2ab05153d2f80a2 100644
--- a/src/caosdb/transaction.cpp
+++ b/src/caosdb/transaction.cpp
@@ -405,6 +405,10 @@ auto Transaction::WaitForIt() const noexcept -> TransactionStatus { // NOLINT
           find_result = std::make_unique<Entity>(&entity_response);
           if (find_result->HasErrors()) {
             set_error = true;
+            // log errors
+            for (auto &err : find_result->GetErrors()) {
+              CAOSDB_LOG_ERROR(logger_name) << err.GetDescription();
+            }
           }
           entities.push_back(std::move(find_result));
         }
@@ -443,6 +447,10 @@ auto Transaction::WaitForIt() const noexcept -> TransactionStatus { // NOLINT
     if (result != nullptr) {
       if (result->HasErrors()) {
         set_error = true;
+        // log errors
+        for (auto &err : result->GetErrors()) {
+          CAOSDB_LOG_ERROR(logger_name) << err.GetDescription();
+        }
       }
       entities.push_back(std::move(result));
     }