Experimental replication

Experimental replication

Memgraph 2.15 introduced a new configuration flag --experimental-enabled, which is an empty list by default.

If you want to use the experimental replication feature, you need to pass in system-replication via the --experimental-enabled flag.

When distributing data across several instances, Memgraph uses replication. This has now been expanded to include not only user data but system data as well. System data here means authentication/authorization data and multi-tenant setup data.

When using experimental replication features, the user can now have a more complete duplicate of MAIN. MAIN will automatically replicate any database creation/drop and any changes to the auth setup.

Replication implementation basics

Please refer to Replication for the basics of replication.

Auth data replication

All authentication/authorization data are now replicated. This includes users, roles, and all of the permissions associated with them.

Auth modules are not replicated at this time and must be set up by the admin.

Multi-tenant data replication

Multi-tenant commands are now replicated as any other data command. Database manipulation is allowed only on MAIN. However, REPLICAs have the ability to use databases and read data contained in them.

When dropping a database used on a REPLICA, the REPLICA will receive the command and will partially drop the database. It will hide it and not allow any new usage of the database but will wait for every client to release the database before deleting it entirely.