Hello!
I try set "big" value as memcaced client. I use prefix 'b:' and happy with
small value. And can save big value and can see its in `external_values`
table. But `get my_key` return empty result.
My actions:
1. In a begining empty tables:
mysql> SELECT * FROM ndbmemcache.demo_table_large;
Empty set (0.01 sec)
mysql> SELECT * FROM ndbmemcache.external_values;
Empty set (0.02 sec)
2. Set small value - 'abcd':
In memcached logs:
<49 set b:my_key 0 0 4
49: going from conn_parse_cmd to conn_nread
49 - Running task: (conn_nread)
49 - Running task: (conn_nread)
Got notify from 49, status 0
>49 STORED
Mysql client:
mysql> SELECT * FROM ndbmemcache.demo_table_large;
+--------+-----------------+--------------+--------+----------+
| mkey | cas_value | string_value | ext_id | ext_size |
+--------+-----------------+--------------+--------+----------+
| my_key | 680130351464502 | abcd | NULL | NULL |
+--------+-----------------+--------------+--------+----------+
1 row in set (0.01 sec)
3. Set big value - 'abcd' * 1000 (4000 characters ):
In memchached logs:
<49 set b:my_key 0 0 4000
49: going from conn_parse_cmd to conn_nread
49 - Running task: (conn_nread)
49 - Running task: (conn_nread)
Got notify from 49, status 0
>49 STORED
Mysql client:
mysql> SELECT * FROM ndbmemcache.demo_table_large;
+--------+-----------------+--------------+--------+----------+
| mkey | cas_value | string_value | ext_id | ext_size |
+--------+-----------------+--------------+--------+----------+
| my_key | 680130351464507 | NULL | 49 | 4000 |
+--------+-----------------+--------------+--------+----------+
1 row in set (0.00 sec)
We see correct size and link to external_value
mysql> SELECT * FROM ndbmemcache.external_values;
/* There are one big row with id=49, part=0 and content= 'abcdabcdabcd...'
*/
Perfect! But...
4. $ telnet localhost 11211
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
get b:my_key
VALUE b:my_key 0 0
END
In memcached logs:
<47 get b:my_key
Got notify from 47, status 0
<47 get b:my_key
>47 sending key b:my_key
>47 END
It`s bug or I do something wrong?
Thank you!