Articles in this section

What is the procedure to skip the outstanding records to be shipped by XDR?

Problem Description

I have XDR lag built up from a destination outage. To recover from this I was able to skip records in digest log but it is no longer available in XDR 5.0 and above. I prefer to send only the records being written live and do not want to send the records currently in the queue.

Explanation

It may be desirable, in certain circumstances, to use the skip outstanding functionality, for instance to avoid propagating incorrectly inserted data or to avoid going into recovery after a long outage.

Before Aerospike version 5.0, XDR had the option to skip outstanding requests being shipped to a remote destination cluster. It was achieved with the command shown below:

asinfo -v 'xdr-command:skip-outstanding'

However, this command is not available in Aerospike 5 and above as the XDR architecture has changed and the digest log, to which the skip outstanding refers to, is no longer present.


Solution

In Aerospike 5 and above, outstanding records to be shipped by XDR can be skipped by dynamically disabling the DC/namespace.

To disable only a namespace, the below command can be used:

asadm -e "asinfo -v 'set-config:context=xdr;dc=<dcname>;namespace=<nsname>;action=remove'"

To dynamically delete a DC, which removes all the associated namespace-level configurations of that DC, use the following command:

asadm -e "asinfo -v 'set-config:context=xdr;dc=<dcname>;action=delete'"

The disassociated DC/namespace can be added back whenever required. Refer to article on How To Enable XDR Dynamically In Aerospike 5.0 And Later shipping to the DC for details.


Applies To Earliest Version

5.0

Applies To Latest Version

Current Version
Was this article helpful?
0 out of 0 found this helpful