Apache Pulsar Nodes
Publish messages to Apache Pulsar topics from a pipeline, with a key and properties.
- Operations
- Publish
- Output
- Topic, message ID and size
Apache Pulsar is a distributed messaging and streaming platform. MaestroHub provides a Publish node to send messages to Pulsar topics within your pipelines; to start a pipeline from a topic, use the Pulsar Trigger.
Configuration Quick Reference
| Field | What you choose | Details |
|---|---|---|
| Parameters | Connection, Function, Function Parameters, Timeout Override | Select the connection profile, function, configure function parameters with expression support, and optionally override timeout. |
| Settings | Description, Timeout (seconds), Retry on Timeout, Retry on Fail, On Error | Node description, maximum execution time, retry behavior on timeout or failure, and error handling strategy. All execution settings default to pipeline-level values. |


Pulsar Publish Node
Pulsar Publish Node
Publish one message to a Pulsar topic and wait for the broker's receipt.
Supported Function Types:
| Function Name | Purpose | Common Use Cases |
|---|---|---|
| Publish | Send a message to a topic, with an optional key and properties | Event streaming, bridging pipelines into a Pulsar-based platform, telemetry publishing |
How It Works
When the pipeline executes, the Publish node:
- Uses the connection's producer for the topic (created on first use and kept for the next publishes)
- Sends the payload with the key and properties, stamped with the time the pipeline produced it
- Returns the message ID once the broker has stored the message
A publish whose receipt did not arrive may still have been stored, so it fails as transient and a retry can publish it twice (at-least-once). A message the broker refused fails as permanent and is not retried. See Publish Function.
Configuration
| Field | What you choose | Details |
|---|---|---|
| Connection | Pulsar connection profile | Select a pre-configured Pulsar connection |
| Function | Publish function | Choose a Pulsar Publish function that defines the topic, key, payload and properties |
| Function Parameters | Message values | Values for the function's ((parameters)), from expressions or constants |
To start a pipeline when messages arrive, use the Pulsar Trigger Node.
Output
The broker's receipt is delivered under result; execution facts (success, functionId, durationMs, timestamp) under _metadata. Pulsar Publish:
| Expression | Description |
|---|---|
$node["Name"].result.topic | The topic published to, as the function names it |
$node["Name"].result.messageId | The message ID the broker assigned (ledger:entry:partition, with :batch for a batched message) |
$node["Name"].result.messageSize | Payload size in bytes |
$node["Name"]._metadata.method, $node["Name"]._metadata.connectionId, $node["Name"]._metadata.protocol | The call's own facts, on every node: the operation, the connection it ran over, pulsar |