Hey @kdrajeshbabu . Ok, so yeah, the reason you were getting messages discarded by the broker (and the particular error message you were seeing) is simply because your publishing application was quitting too quickly. By the time the broker had received your persistent message and was ready to spool them, the publishing application had already quit.
Recall: the point of Guarantee of delivery is when the publishing application receives the ACK from the broker. Check this: https://www.youtube.com/watch?v=5wXv2QqVK3U
And therefore the reason you were not seeing any error messages or anything was because the application had already disconnected.
One useful Solace feature for determining which message was last received by Solace (in the event your publisher quits/crashes unexpectedly) is the Last-Value Queue. Check: Queues and Topic Endpoints
Hope that helps!