This is an automated email from the ASF dual-hosted git repository. lhotari pushed a commit to branch branch-4.0 in repository https://gitbox.apache.org/repos/asf/pulsar.git
commit 17f85e33b1e981fe90bb946242e6c7810daf83c2 Author: Lari Hotari <lhot...@users.noreply.github.com> AuthorDate: Mon Mar 17 15:51:52 2025 +0200 [fix][broker] Avoid IllegalStateException when marker_type field is not set in publishing (#24087) (cherry picked from commit 3e6f7deb0afec2675aac74750f7526557f43c9e7) --- .../apache/pulsar/broker/service/persistent/MessageDeduplication.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/MessageDeduplication.java b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/MessageDeduplication.java index 085e4f688b8..9f734e69896 100644 --- a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/MessageDeduplication.java +++ b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/MessageDeduplication.java @@ -363,7 +363,7 @@ public class MessageDeduplication { // Message is coming from replication, we need to use the replication's producer name, ledger id and entry // id for the purpose of deduplication. MessageMetadata md = Commands.peekMessageMetadata(headersAndPayload, "Check-Deduplicate", -1); - if (Markers.isReplicationMarker(md.getMarkerType())) { + if (md != null && md.hasMarkerType() && Markers.isReplicationMarker(md.getMarkerType())) { publishContext.setProperty(MSG_PROP_IS_REPL_MARKER, ""); } return;