[
https://issues.apache.org/jira/browse/ARTEMIS-2353?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16848409#comment-16848409
]
Gaurav commented on ARTEMIS-2353:
---------------------------------
Appreciate your quick response and help to resolve the issue!
Your pointer to use receipt to track the message persistence on Journal worked
very well.
Following is the code snippet used to track the message persistence:
*Included receipt header while sending SEND frame:*
headers.add("receipt", <receipt-id>); // StompHeaders Class
*Added call back to track lost messages:*
StompSession.Receiptable receiptable = stompSession.send(stompHeaders,
json);
receiptable.addReceiptLostTask((() ->
{
final String receiptFromServer = receiptable.getReceiptId();
logger.info("Messages=" + receiptable.getReceiptId()); // will
receive same receipt-id passed during send message
}
}));
> STOMP message loss during failover
> ----------------------------------
>
> Key: ARTEMIS-2353
> URL: https://issues.apache.org/jira/browse/ARTEMIS-2353
> Project: ActiveMQ Artemis
> Issue Type: Bug
> Components: Broker, STOMP
> Affects Versions: 2.6.4
> Environment: REDHAT_BUGZILLA_PRODUCT="Red Hat Enterprise Linux 7"
> REDHAT_BUGZILLA_PRODUCT_VERSION=7.5
> REDHAT_SUPPORT_PRODUCT="Red Hat Enterprise Linux"
> REDHAT_SUPPORT_PRODUCT_VERSION="7.5"
> Reporter: Gaurav
> Assignee: Justin Bertram
> Priority: Major
> Attachments: brokerBackup.txt, brokerLive.txt
>
>
> We have single instance of Artemis Live server (2.6.4 version) backed up by
> Backup server. Please refer attachments for both Live-Backup broker
> configuration.
> We are using stomp protocol for messaging (port 61613).
> During failover of Live server, backup server is taking control of processing
> all incoming requests so switching from Live->Backup server is smooth.
> But we are seeing message loss (around 2 to 5 messages) exactly during fail
> over time. These messages were successfully published from client side and no
> exception received from broker by this time. After publishing of these
> messages, connectionLost exception was thrown during fail over which our
> application is correctly handling to shift incoming messages load to other
> node.
> It seems Live instance could not persist few messages on Journal file system
> as it got wiped out from in memory session. Major issue is that Client is not
> getting notified through any exception that message could not persist on
> broker journal.
> We are looking for broker configuration through which client call can be
> blocked until published message is not persisted on Journal.
> Any pointer on this issue is appreciated!
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)