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

markap14 pushed a commit to branch NIFI-15258
in repository https://gitbox.apache.org/repos/asf/nifi.git

commit 8414bc7fcd1c1d951da0ac1d17088cba55fa9202
Author: Mark Payne <[email protected]>
AuthorDate: Thu Jan 15 09:27:30 2026 -0500

    NIFI-15468: Ensure that we properly initialize ConnectorNode even if a 
Ghost Connector is created (#10775)
    
    This closes #10775
---
 .../main/java/org/apache/nifi/controller/ExtensionBuilder.java | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git 
a/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/ExtensionBuilder.java
 
b/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/ExtensionBuilder.java
index 54ed942e70..6d985e297d 100644
--- 
a/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/ExtensionBuilder.java
+++ 
b/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/ExtensionBuilder.java
@@ -554,7 +554,7 @@ public class ExtensionBuilder {
         // If an instance class loader has been created for this connector, 
remove it because it's no longer necessary.
         extensionManager.removeInstanceClassLoader(identifier);
 
-        return new StandardConnectorNode(
+        final ConnectorNode connectorNode = new StandardConnectorNode(
             identifier,
             flowController.getFlowManager(),
             extensionManager,
@@ -568,7 +568,13 @@ public class ExtensionBuilder {
             connectorValidationTrigger,
             true
         );
-    }
+
+        // Initialize the ghost connector so that it can be properly 
configured during flow synchronization
+        final FrameworkConnectorInitializationContext initContext = 
createConnectorInitializationContext(managedProcessGroup, componentLog);
+        connectorNode.initializeConnector(initContext);
+
+        return connectorNode;
+   }
 
     private void initializeDefaultValues(final Connector connector, final 
FrameworkFlowContext flowContext) {
         try (final NarCloseable ignored = 
NarCloseable.withComponentNarLoader(extensionManager, connector.getClass(), 
identifier)) {

Reply via email to