You can access the underlying InnoDB table
(which is test.demo_test by default) through
standard SQL interfaces. However, there are some restrictions:
When querying a table that is also accessed through the memcached interface, remember that memcached operations can be configured to be committed periodically rather than after every write operation. This behavior is controlled by the
daemon_memcached_w_batch_sizeoption. If this option is set to a value greater than1, useREAD UNCOMMITTEDqueries to find rows that were just inserted.mysql> SET SESSSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED; mysql> SELECT * FROM demo_test; +------+------+------+------+-----------+------+------+------+------+------+------+ | cx | cy | c1 | cz | c2 | ca | CB | c3 | cu | c4 | C5 | +------+------+------+------+-----------+------+------+------+------+------+------+ | NULL | NULL | a11 | NULL | 123456789 | NULL | NULL | 10 | NULL | 3 | NULL | +------+------+------+------+-----------+------+------+------+------+------+------+When modifying a table using SQL that is also accessed through the memcached interface, you can configure memcached operations to start a new transaction periodically rather than for every read operation. This behavior is controlled by the
daemon_memcached_r_batch_sizeoption. If this option is set to a value greater than1, changes made to the table using SQL are not immediately visible to memcached operations.The
InnoDBtable is either IS (intention shared) or IX (intention exclusive) locked for all operations in a transaction. If you increasedaemon_memcached_r_batch_sizeanddaemon_memcached_w_batch_sizesubstantially from their default value of1, the table is most likely locked between each operation, preventing DDL statements on the table.