Tungsten Replicator version 2.0.6 was released today.
You can get both the binaries and the source code at the project's downloads page.
This release contains many bug fixes, and various improvements. All of them are listed in the Release Notes. The most interesting ones are the improvement in multi-master topologies. Using this release with star topologies you will get less traffic than before, because we have reduced some duplication of transaction history logs that were sent between servers.
And speaking of multi-master topologies, this release includes the cookbook recipes mentioned in this blog some time ago. Normally, these recipes are in their own repository, but for the 2.0.6 binaries we've made an exception and included them in the distribution. You can finally deploy a star or fan-in topology with ease.
Other improvements are a batch loader for data warehousing and more stability for heterogeneous replication. There are also more instrumentation that helps when you are using row-based replication. trepctl status -name tasks gives more detail than before, to let you know what's happening when dealing with huge transactions that were transferred in several chunks.
For an example of deploying a star topology, let's see a quick demo:
$ mkdir someplace
$ cd someplace
$ wget http://tungsten-replicator.googlecode.com/files/tungsten-replicator-2.0.6.tar.gz
simple_services. You should copy it in a directory that is in your $PATH (for example, $HOME/bin)
#!/bin/bash
export NODE1=server1.mydomain.com
export NODE2=server2.mydomain.com
export NODE3=server3.mydomain.com
export NODE4=server4.mydomain.com
export ALL_NODES=($NODE1 $NODE2 $NODE3 $NODE4)
# indicate which servers will be masters, and which ones will have a slave service
# in case of all-masters topologies, these two arrays will be the same as $ALL_NODES
# These values are used for automated testing
# for all-masters and star replication
export MASTERS=($NODE1 $NODE2 $NODE3 $NODE4)
export SLAVES=($NODE1 $NODE2 $NODE3 $NODE4)
export HUB=$NODE3
# MMSERVICES are the names used for services when installing multiple masters
export MM_SERVICES=(alpha bravo charlie delta echo foxtrot golf hotel)
export HUB_SERVICE=charlie
$ ./cookbook/install_star.sh
$ ./cookbook/show_star.sh
$ ./cookbook/test_star.sh
$ ./cookbook/clear_cluster_star.sh
Happy hacking!