Removing namespace without downtime (AER-3485)


#1

Hi

I have a cluster with one node that has 3 namespaces: mynamespace, test, bar. Each one has a replication factor of 2.

I want to add a second node with only 1 namespace: mynamespace. In brief I want to remove test and bar with no downtime.

When I do that, I see a lot of errors on node#2 complaining that it does not find test and bar.

Please would you suggest a way to remove namespace without any down time?

Thank you


#2

Currently all of the nodes need to agree on which namespaces are in the cluster, so currently, you cannot add or remove namespaces without downtime. The ability to do this type of change without downtime is planned.


#3

Thank you for your response.

Can one leverage XDR for that use case? One could spawn a new cluster and not enable replication for the namespaces that one wants to remove. Once replication has completed, one could shut down cluster#1?


#4

Sure, this can be done. It does require that at some point your clients cut over to the new cluster and there will be a period of time where reads may be stale.

The formula for this can be found here:


How to add a namespace in a production cluster
#5

The ability to add/remove namespaces with rolling restart of the cluster is added starting server version 3.13.0.1 for both Community and Enterprise versions on paxos-protocol version v5.

[AER-3485] - (KVS) Support adding/removing namespaces with rolling restart. http://www.aerospike.com/download/server/notes.html#3.13.0.1