From 85a787993c1b7d9676dca15a43f6beede475ffbd Mon Sep 17 00:00:00 2001 From: andsel Date: Sun, 30 Apr 2017 11:31:05 +0200 Subject: [PATCH] Added missing persist on QoS1 retained publish --- .../main/java/io/moquette/spi/impl/MessagesPublisher.java | 4 ++-- .../main/java/io/moquette/spi/impl/ProtocolProcessor.java | 2 +- .../java/io/moquette/spi/impl/Qos1PublishHandler.java | 8 ++++++-- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/broker/src/main/java/io/moquette/spi/impl/MessagesPublisher.java b/broker/src/main/java/io/moquette/spi/impl/MessagesPublisher.java index 7d833078..34473e15 100644 --- a/broker/src/main/java/io/moquette/spi/impl/MessagesPublisher.java +++ b/broker/src/main/java/io/moquette/spi/impl/MessagesPublisher.java @@ -59,11 +59,11 @@ class MessagesPublisher { void publish2Subscribers(IMessagesStore.StoredMessage pubMsg, Topic topic, int messageID) { if (LOG.isTraceEnabled()) { - LOG.trace("Sending publish message to subscribers. ClientId={}, topic={}, messageId={}, payload={}, " + + LOG.trace("Sending publish message to subscribers. CId={}, topic={}, messageId={}, payload={}, " + "subscriptionTree={}", pubMsg.getClientID(), topic, messageID, DebugUtils.payload2Str(pubMsg.getPayload()), subscriptions.dumpTree()); } else { - LOG.info("Sending publish message to subscribers. ClientId={}, topic={}, messageId={}", pubMsg.getClientID(), topic, + LOG.info("Sending publish message to subscribers. CId={}, topic={}, messageId={}", pubMsg.getClientID(), topic, messageID); } publish2Subscribers(pubMsg, topic); diff --git a/broker/src/main/java/io/moquette/spi/impl/ProtocolProcessor.java b/broker/src/main/java/io/moquette/spi/impl/ProtocolProcessor.java index 6ed4de8b..fb5fc275 100644 --- a/broker/src/main/java/io/moquette/spi/impl/ProtocolProcessor.java +++ b/broker/src/main/java/io/moquette/spi/impl/ProtocolProcessor.java @@ -510,7 +510,7 @@ public class ProtocolProcessor { this.qos2PublishHandler.receivedPublishQos2(channel, msg); break; default: - LOG.error("Unkonwn QoS-Type:{}", qos); + LOG.error("Unknown QoS-Type:{}", qos); break; } } diff --git a/broker/src/main/java/io/moquette/spi/impl/Qos1PublishHandler.java b/broker/src/main/java/io/moquette/spi/impl/Qos1PublishHandler.java index b44edf86..1132d049 100644 --- a/broker/src/main/java/io/moquette/spi/impl/Qos1PublishHandler.java +++ b/broker/src/main/java/io/moquette/spi/impl/Qos1PublishHandler.java @@ -19,6 +19,7 @@ package io.moquette.spi.impl; import io.moquette.server.ConnectionDescriptorStore; import io.moquette.server.netty.NettyUtils; import io.moquette.spi.IMessagesStore; +import io.moquette.spi.MessageGUID; import io.moquette.spi.impl.subscriptions.Subscription; import io.moquette.spi.impl.subscriptions.SubscriptionsStore; import io.moquette.spi.impl.subscriptions.Topic; @@ -78,8 +79,11 @@ class Qos1PublishHandler extends QosPublishHandler { m_messagesStore.cleanRetained(topic); } else { // before wasn't stored - //MessageGUID guid = m_messagesStore.storePublishForFuture(toStoreMsg); - m_messagesStore.storeRetained(topic, toStoreMsg.getGuid()); + MessageGUID guid = m_messagesStore.storePublishForFuture(toStoreMsg); + + //TODO Il messaggio non ha il guid settato +// m_messagesStore.storeRetained(topic, toStoreMsg.getGuid()); + m_messagesStore.storeRetained(topic, guid); } }