Chapter 10. SQL Remote Administration
Handling of lost or corrupt messages
Whenmessages are received at a subscriber database, the Message Agent
appliesthem in the correct order (determined from the log offsets) and sends
confirmationto the publisher. Ifa message is missing, the Message Agent
incrementsthe local valueof rereceive_count, and requests that it be resent.
Othermessages present or en route are not applied.
Therequest from a subscriber to resend a message increments the
resend_countvalue at the publisher database, and also sets the publisher’s
log_sentvalue to the value of confirm_sent. Thisresetting of the log_sent
valuecauses operations to be resent.
Userscannot reset log_sent
Thelog_sent value cannot be reset by a user, as it is in a system table.
Messageidentification Eachmessage is identified by three values:
Itsresend_count.
Thetransaction log offset of the last COMMIT in the previous message.
Aserial number within transactions, for transactions that span messages.
Messageswith a resend_countvalue smaller than rereceive_count are not
applied;they are deleted. Thisensures that operations are not applied more
thanonce.
239