SET @transaction_isolation= @@global.transaction_isolation; SET GLOBAL TRANSACTION ISOLATION LEVEL READ UNCOMMITTED; INSERT INTO cache_policies VALUES("cache_policy", "cache_only", "innodb_only", "innodb_only", "innodb_only"); INSERT INTO config_options VALUES("separator", "|"); INSERT INTO containers VALUES ("desc_t1", "test", "t1", "c1", "c2", "c3", "c4", "c5", "PRIMARY"); USE test; CREATE TABLE t1 (c1 VARCHAR(32), c2 VARCHAR(1024), c3 INT, c4 BIGINT UNSIGNED, c5 INT, primary key(c1)) ENGINE = INNODB; INSERT INTO t1 VALUES ('D', 'Darmstadt', 0, 0, 0); INSERT INTO t1 VALUES ('B', 'Berlin', 0, 0, 0); INSERT INTO t1 VALUES ('C', 'Cottbus', 0, 0 ,0); INSERT INTO t1 VALUES ('H', 'Hamburg', 0, 0, 0); INSTALL PLUGIN daemon_memcached SONAME 'libmemcached.so'; SELECT c1,c2 FROM t1; c1 c2 B Berlin C Cottbus D Darmstadt H Hamburg ----- Test get (cache_only) ----- Here are the memcached results with D,B,H,C: SELECT c1,c2 FROM t1; c1 c2 B Berlin C Cottbus D Darmstadt H Hamburg Here are the memcached results with B: SELECT c1,c2 FROM t1; c1 c2 B Berlin C Cottbus D Darmstadt H Hamburg Here are the memcached results with D,H: UNINSTALL PLUGIN daemon_memcached; use innodb_memcache; DELETE FROM cache_policies; INSERT INTO cache_policies VALUES("cache_policy", "caching", "innodb_only", "innodb_only", "innodb_only"); INSTALL PLUGIN daemon_memcached SONAME 'libmemcached.so'; ----- Test get (caching) ----- Here are the memcached results with D,B,H,C: Darmstadt Berlin Hamburg Cottbus UNINSTALL PLUGIN daemon_memcached; use innodb_memcache; DELETE FROM cache_policies; INSERT INTO cache_policies VALUES("cache_policy", "cache_only", "cache_only", "innodb_only", "innodb_only"); INSTALL PLUGIN daemon_memcached SONAME 'libmemcached.so'; ----- Test insert (cache_only) ----- Add E|Essen: Ok. use test; SELECT c1,c2 FROM t1; c1 c2 B Berlin C Cottbus D Darmstadt H Hamburg Here are the memcached results with E: Essen Set P|Paris: Ok. Here are the memcached results with P: Paris UNINSTALL PLUGIN daemon_memcached; use innodb_memcache; DELETE FROM cache_policies; INSERT INTO cache_policies VALUES("cache_policy", "caching", "caching", "innodb_only", "innodb_only"); INSTALL PLUGIN daemon_memcached SONAME 'libmemcached.so'; ----- Test insert (caching) ----- Add G|Gossen: Ok. use test; SELECT c1,c2 FROM t1; c1 c2 B Berlin C Cottbus D Darmstadt G Gossen H Hamburg Here are the memcached results with G: Gossen Delete G|Gossen: Ok. SELECT c1,c2 FROM test.t1; c1 c2 B Berlin C Cottbus D Darmstadt H Hamburg Here are the memcached results with G: Gossen UNINSTALL PLUGIN daemon_memcached; use innodb_memcache; DELETE FROM cache_policies; INSERT INTO cache_policies VALUES("cache_policy", "caching", "caching", "cache_only", "innodb_only"); INSTALL PLUGIN daemon_memcached SONAME 'libmemcached.so'; ----- Test delete (cache_only) ----- Delete G|Gossen: Error: fail to delete. use test; SELECT c1,c2 FROM t1; c1 c2 B Berlin C Cottbus D Darmstadt H Hamburg Here are the memcached results with G: Delete E|Essen: Error: E|Essen doesn't exist. SELECT c1,c2 FROM test.t1; c1 c2 B Berlin C Cottbus D Darmstadt H Hamburg Here are the memcached results with E: UNINSTALL PLUGIN daemon_memcached; use innodb_memcache; DELETE FROM cache_policies; INSERT INTO cache_policies VALUES("cache_policy", "caching", "caching", "caching", "innodb_only"); INSTALL PLUGIN daemon_memcached SONAME 'libmemcached.so'; ----- Test delete (caching) ----- add G|Gossen: Ok. use test; SELECT c1,c2 FROM t1; c1 c2 B Berlin C Cottbus D Darmstadt G Gossen H Hamburg Here are the memcached results with G: Gossen Delete G|Gossen: Ok. SELECT c1,c2 FROM test.t1; c1 c2 B Berlin C Cottbus D Darmstadt H Hamburg Here are the memcached results with G: UNINSTALL PLUGIN daemon_memcached; use innodb_memcache; DELETE FROM cache_policies; INSERT INTO cache_policies VALUES("cache_policy", "cache_only", "caching", "cache_only", "cache_only"); INSTALL PLUGIN daemon_memcached SONAME 'libmemcached.so'; ----- Test flush (cache_only) ----- add G|Gossen: Ok. use test; SELECT c1,c2 FROM t1; c1 c2 B Berlin C Cottbus D Darmstadt G Gossen H Hamburg Here are the memcached results with G: Gossen SELECT c1,c2 FROM test.t1; c1 c2 B Berlin C Cottbus D Darmstadt G Gossen H Hamburg Here are the memcached results after flush_all: SELECT c1,c2 FROM test.t1; c1 c2 B Berlin C Cottbus D Darmstadt G Gossen H Hamburg Here are the memcached results with G: UNINSTALL PLUGIN daemon_memcached; use innodb_memcache; DELETE FROM cache_policies; INSERT INTO cache_policies VALUES("cache_policy", "caching", "caching", "caching", "caching"); INSTALL PLUGIN daemon_memcached SONAME 'libmemcached.so'; ----- Test flush (cache_only) ----- add G|Gossen: Error: fail to add. use test; SELECT c1,c2 FROM t1; c1 c2 B Berlin C Cottbus D Darmstadt G Gossen H Hamburg Here are the memcached results with G: Gossen SELECT c1,c2 FROM test.t1; c1 c2 B Berlin C Cottbus D Darmstadt G Gossen H Hamburg Here are the memcached results after flush_all: SELECT c1,c2 FROM test.t1; c1 c2 Here are the memcached results with G: UNINSTALL PLUGIN daemon_memcached; use innodb_memcache; DELETE FROM cache_policies; INSERT INTO cache_policies VALUES("cache_policy", "caching", "disabled", "disabled", "disabled"); INSTALL PLUGIN daemon_memcached SONAME 'libmemcached.so'; use test; delete from t1; INSERT INTO t1 VALUES ('D', 'Darmstadt', 0, 0, 0); INSERT INTO t1 VALUES ('B', 'Berlin', 0, 0, 0); INSERT INTO t1 VALUES ('C', 'Cottbus', 0, 0 ,0); INSERT INTO t1 VALUES ('H', 'Hamburg', 0, 0, 0); ----- Test all operations disabled ----- add G|Gossen: Ok. use test; SELECT c1,c2 FROM t1; c1 c2 B Berlin C Cottbus D Darmstadt H Hamburg Here are the memcached results with G: SELECT c1,c2 FROM test.t1; c1 c2 B Berlin C Cottbus D Darmstadt H Hamburg Here are the memcached results after flush_all: SELECT c1,c2 FROM test.t1; c1 c2 B Berlin C Cottbus D Darmstadt H Hamburg Here are the memcached results with G: UNINSTALL PLUGIN daemon_memcached; use innodb_memcache; DELETE FROM cache_policies; INSERT IGNORE INTO cache_policies VALUES("junk", "junk", "caching", "cache_only", "disabled"); Warnings: Warning 1265 Data truncated for column 'get_policy' at row 1 INSTALL PLUGIN daemon_memcached SONAME 'libmemcached.so'; ----- Test with wrong policy name ----- add G|Gossen: Ok. use test; SELECT c1,c2 FROM t1; c1 c2 B Berlin C Cottbus D Darmstadt G Gossen H Hamburg Here are the memcached results with G: Gossen SELECT c1,c2 FROM test.t1; c1 c2 B Berlin C Cottbus D Darmstadt G Gossen H Hamburg Here are the memcached results after flush_all (flush disabled): Gossen SELECT c1,c2 FROM test.t1; c1 c2 B Berlin C Cottbus D Darmstadt G Gossen H Hamburg Here are the memcached results with G: Gossen USE test; DROP TABLE t1; UNINSTALL PLUGIN daemon_memcached; DROP DATABASE innodb_memcache; SET @@global.transaction_isolation= @transaction_isolation;