Thanks Gilles. It works! I used the community tarball and version 5.0.8 of Mysql's Connector/J. My application points to the IP: Port of Tungsten-Connector, and queries get split among the Mysql master and slave databases. I enabled Mysql's general query log on each machine and verified that SELECTs get sent to the slave, not the master.
One oddity: Tungsten-Connentor appears to be continuously creating connections with the read-only slave. At any given time there are 25 open connections to the slave, all running the following queries:
QUOTE:
# grep 9670 /tmp/all-mysql.log
9670 Connect myROuser@domU-12-31-39-02-F6-18.compute-1.internal on db_drupal
9670 Query SHOW SESSION VARIABLES
9670 Query SHOW COLLATION
9670 Query SET character_set_results = NULL
9670 Query SET autocommit=1
9670 Query SET sql_mode='STRICT_TRANS_TABLES'
9670 Query SELECT @@session.tx_isolation
100221 17:21:51 9670 Quit
Here are the contents of my config files (with username/password/domains changed):
conf/connector.properties:
server.protocol = mysql
server.version = 5.0.45
server.port = 9999
jdbc.driver = com.mysql.jdbc.Driver
jdbc.driver.base.url = jdbc:mysql://
jdbc.direct-connection.driver = com.mysql.jdbc.Driver
jdbc.driver.options = ?user=myRWuser&password=myRWpass
user.map.filename = /opt/tungsten/tungsten-connector/conf/user.map
connection.close.idle.timeout = 0
statement.fetch.size = 0
selective.rwsplitting=false
passThroughMode=true
rw.splitting.mode=safe
rw.splitting.scope=direct
conf/user.map
myRWuser myRWpass db_drupal dbmaster.mydomain.com:3306
@direct myRWuser db_drupal jdbc:mysql://dbmaster.mydomain.com:3306/db_drupal?user=myROuser&
password=myROpass