diff --git a/common/cpp/include/common/error.h b/common/cpp/include/common/error.h
index ef131f3b5a849e69f8504cd0900ea5b74b0858a1..397b568589b27bdcc342eea716bbcd733bc14628 100644
--- a/common/cpp/include/common/error.h
+++ b/common/cpp/include/common/error.h
@@ -8,8 +8,7 @@
 namespace asapo {
 
 enum class ErrorType {
-    kUnknownError,
-
+    kUnknownError = 0,
     kAsapoError,
     kHttpError,
     kIOError,
@@ -19,7 +18,6 @@ enum class ErrorType {
     kWorkerError,
     kMemoryAllocationError,
     kEndOfFile,
-    kTimeOut
 };
 
 class ErrorInterface;
diff --git a/examples/worker/getnext_broker/getnext_broker.cpp b/examples/worker/getnext_broker/getnext_broker.cpp
index 7fa75a351a8036e71ddcbae16542d88265d721b0..2e34cd0987d58dc39aeb2632c6afa2ad43bf4e7c 100644
--- a/examples/worker/getnext_broker/getnext_broker.cpp
+++ b/examples/worker/getnext_broker/getnext_broker.cpp
@@ -10,6 +10,7 @@
 
 #include "asapo_worker.h"
 
+
 using std::chrono::high_resolution_clock;
 using asapo::Error;
 
@@ -35,7 +36,7 @@ void WaitThreads(std::vector<std::thread>* threads) {
 int ProcessError(const Error& err) {
     if (err == nullptr) return 0;
     std::cout << err->Explain() << std::endl;
-    return err->GetErrorType() == asapo::ErrorType::kTimeOut ? 0 : 1;
+    return err == asapo::IOErrorTemplates::kTimeout ? 0 : 1;
 }
 
 std::vector<std::thread> StartThreads(const Params& params,
@@ -80,7 +81,8 @@ std::vector<std::thread> StartThreads(const Params& params,
                 }
             } else {
                 (*errors)[i] += ProcessError(err);
-                if (err->GetErrorType() == asapo::ErrorType::kTimeOut) {
+                std::cout << "Received: " << (int)err->GetErrorType() << err << std::endl;
+                if (err == asapo::IOErrorTemplates::kTimeout) {
                     break;
                 }
             }
diff --git a/tests/manual/performance_broker_receiver/getlast_broker.cpp b/tests/manual/performance_broker_receiver/getlast_broker.cpp
index 95c374790fa7cec7e696c10b2414d919178f840a..3a49bdc95443128b775b61245defbff01df69aae 100644
--- a/tests/manual/performance_broker_receiver/getlast_broker.cpp
+++ b/tests/manual/performance_broker_receiver/getlast_broker.cpp
@@ -36,7 +36,7 @@ void WaitThreads(std::vector<std::thread>* threads) {
 int ProcessError(const Error& err) {
     if (err == nullptr) return 0;
     std::cout << err->Explain() << std::endl;
-    return err->GetErrorType() == asapo::ErrorType::kTimeOut ? 0 : 1;
+    return err == asapo::IOErrorTemplates::kTimeout ? 0 : 1;
 }
 
 std::vector<std::thread> StartThreads(const Params& params,
@@ -77,7 +77,7 @@ std::vector<std::thread> StartThreads(const Params& params,
                 }
             } else {
                 (*errors)[i] += ProcessError(err);
-                if (err->GetErrorType() == asapo::ErrorType::kTimeOut) {
+                if (err == asapo::IOErrorTemplates::kTimeout) {
                     break;
                 }
             }
diff --git a/worker/api/cpp/include/worker/worker_error.h b/worker/api/cpp/include/worker/worker_error.h
index e2b280a1787f16b929bfdcba9a9a0e73c21ec8fd..67839db624f0333ce4e271258d66198ac64d6f80 100644
--- a/worker/api/cpp/include/worker/worker_error.h
+++ b/worker/api/cpp/include/worker/worker_error.h
@@ -2,6 +2,7 @@
 #define ASAPO_WORKER_ERROR_H
 
 #include "common/error.h"
+#include "common/io_error.h"
 
 namespace asapo {
 
diff --git a/worker/api/cpp/src/server_data_broker.cpp b/worker/api/cpp/src/server_data_broker.cpp
index 58185be85dd95614d7cd49e8cb7f0de62f22ea1e..6a9699b9f3bf0ca73560870ff69e6cc80044938e 100644
--- a/worker/api/cpp/src/server_data_broker.cpp
+++ b/worker/api/cpp/src/server_data_broker.cpp
@@ -1,16 +1,15 @@
 #include "server_data_broker.h"
 
 #include <chrono>
+#include <iostream>
 
 #include <json_parser/json_parser.h>
-
 #include "io/io_factory.h"
-
 #include "http_client/http_error.h"
 #include "tcp_client.h"
 
-#include <iostream>
-#include <asapo_worker.h>
+
+#include "asapo_worker.h"
 
 using std::chrono::high_resolution_clock;
 
diff --git a/worker/api/cpp/unittests/test_server_broker.cpp b/worker/api/cpp/unittests/test_server_broker.cpp
index 86854a0ecba2eabcc1c9cdeeea1ed925a284a55d..85255629602b3cb960fc851443f43959cf9400c8 100644
--- a/worker/api/cpp/unittests/test_server_broker.cpp
+++ b/worker/api/cpp/unittests/test_server_broker.cpp
@@ -532,6 +532,7 @@ TEST_F(ServerDataBrokerTests, QueryImagesReturnEmptyResults) {
 
 TEST_F(ServerDataBrokerTests, QueryImagesReturnRecords) {
     return;
+    
     MockGetBrokerUri();
 
     auto rec1 = CreateFI();