Process Groups and Scoping Overview

Modified on Thu, 11 Dec, 2025 at 2:08 PM

Summary

Process groups organize your Clockspring dataflow into logical modules (think of a folder on your computer). They define scoping boundaries for controller services and parameter contexts, act as deployment units for version control, and provide a clean way to start, stop, and manage complex flows.


1. What a Process Group Is

A process group is a container for processors, ports, funnels, and other process groups. It serves as:

  • An organizational unit

  • A scoping boundary

  • A deployment boundary

  • An operational control point

Process groups allow you to break large flows into manageable, reusable components.


2. Scoping and Nesting

Process groups can be nested to create layers of logic. Scoping works like this:

  • The root canvas is the top-level parent

  • A process group can have child process groups

  • Each process group can define its own configuration and defaults

Higher-level groups can provide services and parameters to their children, but not the other way around.


3. Controller Service Inheritance (Reminder)

Controller service inheritance is simple:

  • Defined at root → available everywhere

  • Defined in a process group → available only in that group and its children

  • No sideward or upward inheritance

This is why you decide carefully where to place shared controller services.  See Controller Services Inheritance for more information


4. Parameter Context Assignment

Parameter contexts can be attached directly to a process group.

  • The group uses the selected context

  • Child groups may inherit or assign their own

  • “Apply Recursively” forces children to use the same context

This is how you manage environment-specific values (URLs, credentials, tenant IDs) without hardcoding anything in processors.


A dedicated article will cover parameter contexts in detail.


5. Process Group Settings (Overview)

A process group’s Settings panel defines behavior for everything inside that group:

  • Default FlowFile Expiration

  • Default Backpressure Object Threshold

  • Default Backpressure Data Size Threshold

  • Execution Engine (Inherited / Standard / Stateless)

  • Process Group FlowFile Concurrency (Unbounded / Single)

  • Process Group Outbound Policy (Stream When Available / Batch Output)

  • Log file suffix


These settings can be inherited or overridden, and they control how FlowFiles move through the group.


We will cover them deeply in the next article.


6. Input and Output Ports (Conceptual Use)

Ports define how FlowFiles move into and out of a process group.

  • Input Ports: Accept FlowFiles from outside the group

  • Output Ports: Emit FlowFiles from inside the group


A separate article will detail ports, wiring, and best practices.


7. Starting and Stopping Process Groups

Process groups have an operator palette that allows you to:

  • Start all processors in the group

  • Stop all processors in the group

  • Apply these actions recursively

This is how you manage entire subsystems.


A process group may be “running” even if some processors inside are invalid or disabled - start/stop only affects active processors.


8. Version Control at the Process Group Level

Version control is attached at the process group boundary:

  • You register a process group with the registry

  • Changes inside that group are tracked

  • The group becomes a deployable versioned component

This is why good scoping matters — each group becomes a natural unit of deployment.


Exporting process groups (with or without controller services) will be covered in its own article.


9. Quick Rules to Remember

  • Process groups define scope, inheritance, and deployment boundaries.

  • Controller services and parameters inherit down, not up.

  • Assign parameter contexts at the group level to separate environments.

  • Group-level settings control how FlowFiles move inside the group.

  • Ports define clean entry and exit points.

  • Version control operates at the process group, not global, level.


Related Articles

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article