Gábor Gyimesi created MINIFICPP-2732:
----------------------------------------

             Summary: C2 property update sometimes crashes on Windows
                 Key: MINIFICPP-2732
                 URL: https://issues.apache.org/jira/browse/MINIFICPP-2732
             Project: Apache NiFi MiNiFi C++
          Issue Type: Bug
            Reporter: Gábor Gyimesi


In a scenario where C2 property update is sent after C2 debug command with the 
update parameters nifi.c2.agent.class and nifi.c2.agent.heartbeat.period to a 
Windows minificpp agent from a C2 server, sometimes the windows client crashes 
with the following error:
{code:java}
Exception thrown: read access violation.
org::apache::nifi::minifi::core::Property::getValidator(...).**** was nullptr. 
{code}
Stack trace:
{code:java}
core-minifi.dll!org::apache::nifi::minifi::state::response::`anonymous 
namespace'::serializeClassDescription(const 
std::vector<org::apache::nifi::minifi::ClassDescription,std::allocator<org::apache::nifi::minifi::ClassDescription>>
 & descriptions, const std::string & name, 
org::apache::nifi::minifi::state::response::SerializedResponseNode & response) 
Line 70
    at 
D:\Projects\nifi-minifi-cpp\libminifi\src\core\state\nodes\AgentInformation.cpp(70)
core-minifi.dll!org::apache::nifi::minifi::state::response::serializeComponentManifest(const
 org::apache::nifi::minifi::Components & components) Line 144
    at 
D:\Projects\nifi-minifi-cpp\libminifi\src\core\state\nodes\AgentInformation.cpp(144)
core-minifi.dll!org::apache::nifi::minifi::state::response::Bundles::serialize()
 Line 153
    at 
D:\Projects\nifi-minifi-cpp\libminifi\src\core\state\nodes\AgentInformation.cpp(153)
core-minifi.dll!org::apache::nifi::minifi::state::response::AgentManifest::serialize()
 Line 291
    at 
D:\Projects\nifi-minifi-cpp\libminifi\src\core\state\nodes\AgentInformation.cpp(291)
core-minifi.dll!org::apache::nifi::minifi::state::response::AgentNode::getAgentManifest::__l2::<lambda_1>::operator()()
 Line 332
    at 
D:\Projects\nifi-minifi-cpp\libminifi\src\core\state\nodes\AgentInformation.cpp(332)
core-minifi.dll!org::apache::nifi::minifi::state::response::AgentNode::getAgentManifest()
 Line 327
    at 
D:\Projects\nifi-minifi-cpp\libminifi\src\core\state\nodes\AgentInformation.cpp(327)
core-minifi.dll!org::apache::nifi::minifi::state::response::AgentNode::getAgentManifestHash()
 Line 340
    at 
D:\Projects\nifi-minifi-cpp\libminifi\src\core\state\nodes\AgentInformation.cpp(340)
core-minifi.dll!org::apache::nifi::minifi::state::response::AgentNode::serialize()
 Line 321
    at 
D:\Projects\nifi-minifi-cpp\libminifi\src\core\state\nodes\AgentInformation.cpp(321)
core-minifi.dll!org::apache::nifi::minifi::state::response::AgentInformation::serialize()
 Line 363
    at 
D:\Projects\nifi-minifi-cpp\libminifi\src\core\state\nodes\AgentInformation.cpp(363)
core-minifi.dll!org::apache::nifi::minifi::c2::C2MetricsPublisher::getHeartbeatNodes(bool
 include_manifest) Line 189
    at D:\Projects\nifi-minifi-cpp\libminifi\src\c2\C2MetricsPublisher.cpp(189)
core-minifi.dll!org::apache::nifi::minifi::c2::C2Agent::performHeartBeat() Line 
220
    at D:\Projects\nifi-minifi-cpp\libminifi\src\c2\C2Agent.cpp(220)
core-minifi.dll!org::apache::nifi::minifi::c2::C2Agent::produce() Line 952
    at D:\Projects\nifi-minifi-cpp\libminifi\src\c2\C2Agent.cpp(952)
core-minifi.dll!org::apache::nifi::minifi::c2::C2Agent::initialize::__l2::<lambda_1>::operator()()
 Line 104
    at D:\Projects\nifi-minifi-cpp\libminifi\src\c2\C2Agent.cpp(104)
[External Code]
core-minifi.dll!org::apache::nifi::minifi::utils::Worker::run() Line 82
    at D:\Projects\nifi-minifi-cpp\core-framework\include\utils\ThreadPool.h(82)
core-minifi.dll!org::apache::nifi::minifi::utils::ThreadPool::run_tasks(const 
std::shared_ptr<org::apache::nifi::minifi::utils::WorkerThread> & thread) Line 
60
    at D:\Projects\nifi-minifi-cpp\core-framework\src\utils\ThreadPool.cpp(60)
core-minifi.dll!org::apache::nifi::minifi::utils::ThreadPool::manageWorkers::__l5::<lambda_1>::operator()()
 Line 138
    at D:\Projects\nifi-minifi-cpp\core-framework\src\utils\ThreadPool.cpp(138)
[External Code]
core-minifi.dll!org::apache::nifi::minifi::utils::ThreadPool::createThread::__l2::<lambda_1>::operator()()
 Line 251
    at 
D:\Projects\nifi-minifi-cpp\core-framework\include\utils\ThreadPool.h(251)
[External Code]{code}
 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to