Skip to main content
Version: 3.0 (next)

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​

FieldWhat you chooseDetails
ParametersConnection, Function, Function Parameters, Timeout OverrideSelect the connection profile, function, configure function parameters with expression support, and optionally override timeout.
SettingsDescription, Timeout (seconds), Retry on Timeout, Retry on Fail, On ErrorNode 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 configurationPulsar Publish node configuration

Pulsar Publish Node

Pulsar Publish Node​

Publish one message to a Pulsar topic and wait for the broker's receipt.

Supported Function Types:

Function NamePurposeCommon Use Cases
PublishSend a message to a topic, with an optional key and propertiesEvent streaming, bridging pipelines into a Pulsar-based platform, telemetry publishing

How It Works​

When the pipeline executes, the Publish node:

  1. Uses the connection's producer for the topic (created on first use and kept for the next publishes)
  2. Sends the payload with the key and properties, stamped with the time the pipeline produced it
  3. 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​

FieldWhat you chooseDetails
ConnectionPulsar connection profileSelect a pre-configured Pulsar connection
FunctionPublish functionChoose a Pulsar Publish function that defines the topic, key, payload and properties
Function ParametersMessage valuesValues for the function's ((parameters)), from expressions or constants
Looking for event-driven pipeline triggers?

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:

ExpressionDescription
$node["Name"].result.topicThe topic published to, as the function names it
$node["Name"].result.messageIdThe message ID the broker assigned (ledger:entry:partition, with :batch for a batched message)
$node["Name"].result.messageSizePayload size in bytes
$node["Name"]._metadata.method, $node["Name"]._metadata.connectionId, $node["Name"]._metadata.protocolThe call's own facts, on every node: the operation, the connection it ran over, pulsar