You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by ad...@apache.org on 2022/11/21 12:04:07 UTC

[nifi-minifi-cpp] 02/02: MINIFICPP-1815 - PersistenceTests transiently fails

This is an automated email from the ASF dual-hosted git repository.

adebreceni pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi-minifi-cpp.git

commit 3b8fb0d369926ba38ae9295debb40e9d2bad6c79
Author: Adam Markovics <nu...@gmail.com>
AuthorDate: Mon Nov 21 13:03:09 2022 +0100

    MINIFICPP-1815 - PersistenceTests transiently fails
    
    Signed-off-by: Adam Debreceni <ad...@apache.org>
    
    This closes #1455
---
 libminifi/include/core/ThreadedRepository.h | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/libminifi/include/core/ThreadedRepository.h b/libminifi/include/core/ThreadedRepository.h
index e03aed9e5..c991e2d57 100644
--- a/libminifi/include/core/ThreadedRepository.h
+++ b/libminifi/include/core/ThreadedRepository.h
@@ -51,8 +51,10 @@ class ThreadedRepository : public core::Repository, public core::TraceableResour
       running_state_.store(RunningState::Running);
       return true;
     }
-    getThread() = std::thread(&ThreadedRepository::run, this);
+
+    // must set Running state before calling run(), as run() might check state
     running_state_.store(RunningState::Running);
+    getThread() = std::thread(&ThreadedRepository::run, this);
 
     logger_->log_debug("%s ThreadedRepository monitor thread start", name_);
     return true;